Visual walkthrough — Gradient perpendicular to level curves - surfaces
We work in 2D (a level curve) because it is drawable; the 3D case (a level surface) is identical word-for-word.
Step 0 — The picture everything sits on
Before any symbols, let us agree on what we are looking at.
Imagine a hill. Its height above the ground at horizontal position is a single number. Call the rule that gives that number .
Now draw, on the flat map, every point that happens to sit at the same height. That set of points is a curve.

In the figure the peach shading is the hill seen from above (darker = higher). The magenta loop is one level curve . Every point on that magenta loop is at exactly height . Our whole quest: find the direction of the arrow at the marked point that climbs the hill fastest, and show it is perpendicular to the magenta loop there.
Step 1 — What "steepest increase" even means: the gradient
We need the arrow that points most uphill. First, what tells us how the height changes as we nudge or ?
Stack those two rates into a single arrow:
WHY a vector, not just a slope? Because on a hill you can walk in infinitely many directions, not just east or west. The two partials are the "east rate" and "north rate"; combining them as an arrow lets us later ask any direction's rate with one dot product. It is a known fact (from the Directional Derivative) that this particular arrow points in the direction of steepest increase — that is why we build it.

The orange arrow is at : it points to where the shading darkens fastest — straight up the hill. Our claim is that this orange arrow is at to the magenta curve. We must prove it.
Step 2 — A trick: ride a curve that stays on the level set
Rather than reason about the whole loop at once, we send a tiny explorer walking along the magenta curve and track their position through time.
WHAT this equation says, symbol by symbol: feed the moving position into the height rule ; because the dot stays on the contour, that height is always the same constant , no matter what is.
WHY do this? Because the velocity of this explorer is, by construction, a direction that lies flat along the curve. If we can show the gradient is perpendicular to that velocity — for every explorer, every direction of travel — then the gradient is perpendicular to the curve itself.

The violet dot is mid-walk; the little violet arrow is where it is heading next — its velocity, coming up in Step 3.
Step 3 — The explorer's velocity is the tangent
WHY is this the tangent to the curve? Velocity always points where you are about to go. Since the explorer never leaves the magenta curve, the "about to go" direction hugs the curve — it is the tangent line's direction at that point.

The violet arrow lies flat against the curve — it grazes it, touching without crossing. Hold onto two arrows now: orange (Step 1) and violet (here). The whole proof is about the angle between them.
Step 4 — Differentiate the "stays constant" equation
Here is the one clever move. We have an equation that is true for all : If two things are equal for all , their rates of change in are also equal. So differentiate both sides.
The right side first — the easy half: WHY? is a fixed number; a number that never moves has zero rate of change. This zero is the hero of the whole story.
The left side — the chain rule half. The height depends on position, and position depends on time. To differentiate "a function of a moving point," we need the Multivariable Chain Rule:
WHY the chain rule, and not some other tool? We have a composition: time → position → height. The chain rule is precisely the machine that multiplies "rate of the outer part" by "rate of the inner part." In many variables that "multiply" becomes a dot product — the gradient (height's sensitivity to each coordinate) dotted with the velocity (each coordinate's sensitivity to time).

The figure shows the two rate-flows meeting: the orange gradient and the violet velocity feeding into one dot product.
Step 5 — Read off the right angle
Put the two halves of Step 4 together. Left rate = right rate, so:
Now invoke the geometric meaning of the dot product from Step 4: a dot product of two nonzero arrows equals zero only when the angle between them is . Therefore:

The little red square at marks the perfect right angle between the orange gradient and the violet tangent. That square is the entire theorem, made of one corner.
Step 6 — The degenerate case: what if ?
Every proof owes you the fine print. Our conclusion "" quietly assumed both arrows are nonzero — because only tells you a angle when there actually are two arrows to angle.
What if ? Then is still true, but "perpendicular" is meaningless — the zero vector has no direction. This is a critical point: a hilltop, a valley bottom, or a saddle. There, the level "curve" may not be a smooth curve at all (think of the single point at a peak, or two lines crossing at a saddle).

Left: a saddle at the origin for , level set is two crossing lines — no single tangent, and there. Right: a peak where the level set is a single point. In both, "perpendicular" has nothing to attach to.
The one-picture summary

Everything on one canvas: the magenta level curve , the violet explorer sliding along it with velocity (the tangent), the orange gradient pointing uphill, and the red right-angle square where they meet. The chain-rule chain time → position → height forces , and a zero dot product is a right angle. Once you have this picture, the Tangent Plane to a Surface (use as the normal) and Lagrange Multipliers (two gradients both normal to their level sets must be parallel) follow instantly.
Recall Feynman retelling in plain words
Draw a hill from above as a map of contour lines — loops of equal height. Send a tiny walker around one loop. Because they stay on the loop, their height never changes: the height's rate of change as they walk is exactly zero. Now, "rate of change of height as you move" is how uphill you are pointing — that is the gradient dotted with your walking direction. If that equals zero and you're truly moving, the only possibility is that the uphill arrow points at a perfect right angle to your path. So the steepest-uphill arrow (the gradient) always crosses the contour lines like a "T." The one exception is a hilltop or a saddle, where the ground is flat in the sense that the uphill arrow shrinks to nothing — there is no arrow left to be perpendicular.
Connections
- Directional Derivative — ; it's the zero along the curve that pins the angle.
- Multivariable Chain Rule — the engine of Step 4.
- Tangent Plane to a Surface — reads off as the normal vector.
- Lagrange Multipliers — both gradients normal to their level sets ⇒ they line up.
- Steepest Descent / Gradient Descent — steps against , i.e. across the level sets.