Milk curdles because heat and acid both attack the same protein cluster from different directions, and a pan gives you both at once. Cold milk shrugs off a splash of lemon juice. Simmering milk barely tolerates it. Add both together and the proteins that were holding a smooth liquid together clump into visible curds within seconds.
What's actually suspended in a glass of milk
Whole milk looks uniform, but it's two separate systems layered into the same water. Its fat exists as tiny droplets, each wrapped in a thin membrane, floating through the liquid as an emulsion. Its protein exists mostly as casein — clustered into round particles called micelles, a few hundred nanometers across, held together by calcium phosphate and kept apart from each other by a slight negative electrical charge on their surface. That charge is doing real work: it makes the micelles repel one another instead of sticking, which is the only thing keeping raw milk a liquid instead of a lump.
Why acid curdles it
Lemon juice, wine, vinegar and buttermilk cultures all do the same thing to that charge: they lower the pH. As milk's pH falls from its natural 6.5–6.7 toward about 4.6, the negative charge on the casein micelles gets neutralized. Once it's gone, there's nothing left pushing the micelles apart, and they collide and stick wherever they touch. That's curdling — not the milk "going bad," but its own repulsion switch getting turned off.
Why heat pushes it the rest of the way
Heat destabilizes the same structure through a different channel. It makes the calcium phosphate holding each micelle together less soluble, so calcium starts leaching out and gluing micelles to each other from the outside. It also unfolds a separate whey protein, beta-lactoglobulin, which then latches onto the casein micelles and makes them stickier still. Neither effect alone is usually enough to visibly curdle milk at normal cooking temperatures — but each one lowers how much acid it takes to finish the job. That's why a splash of wine deglazing a pan does nothing to cold milk in the fridge and curdles the same milk instantly once it hits a simmer: heat has already pushed the micelles most of the way to falling apart, and the acid only has to supply the rest.
Why milk skins over when you heat it
A skin forms for a related reason, at a smaller scale. As milk heats, water evaporates fastest right at the surface, which concentrates whatever protein and fat are sitting there. That concentrated layer denatures and sets into a thin film — a miniature version of the same coagulation happening throughout the pot, just localized to the top. Stirring, or covering the pot so steam can't escape as fast, slows the evaporation and keeps the skin from forming.
What homogenization actually changed
Raw milk's fat droplets are large enough — several microns across — that they rise to the top within hours, the same way oil separates from vinegar left standing. Homogenization forces milk through narrow nozzles at high pressure, shattering those droplets down to roughly a tenth their original size. Smaller droplets have far more total surface area, so casein proteins coat them more thoroughly and hold them suspended instead of letting them cream to the top. Homogenized milk doesn't need shaking for exactly that reason — the fat is still there, just broken up too fine to rise.
Why "whole milk" is 3.25% fat and not some natural number
Milk straight from a cow doesn't come out at a fixed fat percentage — it varies with breed, diet and season, commonly landing anywhere from about 3.5% to well over 4%. Dairies skim off some of that cream and blend it back in to hit a consistent target, and in the United States, the regulatory floor for a product allowed to be labeled "whole milk" is 3.25% milkfat by weight. It's a standardization line drawn by regulators, not a property of the animal — which is why whole milk tastes and behaves the same from one carton to the next even though no two cows produce identical milk.