linear versus nonlinear behaviour
Linear and nonlinear first-order equations are not just solved differently — they behave differently in ways that matter for whether a solution exists, is unique, and lasts. Knowing the contrast tells you in advance how well-behaved a problem will be before you compute anything.
Linear equations y' + p(x) y = q(x) are remarkably tame. With continuous p and q, any initial value problem has exactly one solution, that solution exists on the entire interval where p and q are continuous, and you can find it by a guaranteed recipe. Nonlinear equations y' = f(x, y) make none of these promises. They can lose uniqueness: y' = y^(1/3), y(0) = 0 has both y = 0 and a nonzero solution through the same point, because f is not Lipschitz in y there. They can blow up in finite time: y' = y^2, y(0) = 1 gives y = 1/(1 - x), which races to infinity as x approaches 1, even though f is perfectly smooth — the interval of existence shrinks for reasons you cannot read off the formula. And their solution intervals can depend on the initial data itself, unlike the linear case where the interval is fixed by the coefficients.
This contrast is one of the most important orienting facts in the subject. It is why linear theory is so complete and why nonlinear equations need existence-uniqueness theorems (to say when solutions are well-behaved), qualitative methods (to understand them without formulas), and numerics (because closed forms rarely exist). The honest summary: linearity buys you global existence, uniqueness, and superposition all at once; drop linearity and every one of those guarantees can fail, which is precisely why the rest of ODE theory is so much richer and harder.
Compare y' = -y (linear) with y' = y^2 (nonlinear), each with y(0) = 1. The linear one gives y = e^(-x), defined for all x. The nonlinear one gives y = 1/(1 - x), which exists only for x less than 1 and blows up there — same simplicity of form, utterly different fate.
Linear solutions live on the full coefficient interval; nonlinear ones can blow up or branch, with intervals set by the data.
A smooth-looking f is no guarantee of good behaviour: y' = y^2 has a polynomial right side yet blows up in finite time. Smoothness gives local uniqueness, not global existence.