Mix the milk, rice, sugar and salt in a medium-to-large saucepan. Heat, stirring occasionally until the mixture comes to a boil.: The first aroma you get is sweet cream as the whole milk and sugar mingle, and you ll hear only a quiet simmer until heat builds. Stirring at this stage ensures even distribution so the rice cooks uniformly and the sugar dissolves, preventing gritty pockets. A common mistake is using a too small pot which leads to boil over, so choose a roomy saucepan. Keep your spoon handy, the texture should start smooth and glossy, not lumpy. If you re worried about sticking later, use a heavy bottomed pan for even heat distribution. Visual cue to look for is a uniform pale liquid with the grains floating freely.
Reduce the heat to a simmer and continue to cook, stirring frequently (to keep the rice from sticking together, as well as to the bottom and sides of the pot), until the rice is almost tender and much of the liquid is absorbed, about 20 to 25 minutes. Add the vanilla paste, if using, and continue to cook until the pudding mixture resembles very loose oatmeal and the rice grains are tender, which may take up to 15 minutes longer over very low heat.: As the pot warms you ll notice steam rising and the surface starting to ripple, a soft rolling motion signaling it s close to boiling. The sound is a gentle, increasing bubble rather than an aggressive roar. Stir occasionally to keep the rice moving, which prevents it from settling and clinging to the base. Avoid a hard boil, which scalds the milk and can make the texture grainy; moderate heat is key. If the milk begins to foam up quickly, reduce the heat immediately. Visually, you want small even bubbles across the surface, not violent splatter.
Remove the heat and stir in the lemon or orange zest and vanilla extract, if using.: At simmer the scent shifts to a richer dairy note and the mixture thickens gradually as the rice releases starch. Stirring frequently encourages even softening and prevents mats of stuck grains, which cause uneven cooking. Expect a slow, comforting bubbling sound and a thicker consistency that clings lightly to the spoon. A typical error is walking away for long periods which results in scorching and uneven texture. The visual cue is a substantially reduced liquid level with plumped, nearly tender grains floating in a glossy, syrupy milk.
Add the vanilla paste, if using, and continue to cook until the pudding mixture resembles very loose oatmeal and the rice grains are tender which may take up to 15 minutes longer over very low heat.: Introducing vanilla bean paste at this point deepens the aroma, releasing flecks of bean that make the pudding smell almost floral. Continue cooking on low so the starches fully bloom into a creamy body, aiming for a velvety, porridge like texture rather than thick custard. The pot should barely bubble, and you ll see the mixture coat the back of a spoon in a thin veil. A pitfall is cooking too fast which yields dry grains and a gummy mouthfeel, so keep it slow. Look for rice that yields easily when pressed, with the liquid thick but still spoonable.
Remove the heat and stir in the lemon or orange zest and vanilla extract if using.: Off the heat, stirring in zest and vanilla extract preserves their volatile oils, giving a bright fragrance that lifts the creamy base. You ll notice a fragrant citrus burst and a soft vanilla perfume. Stir gently to distribute the zest evenly; vigorous stirring can break the grains into mush. A common oversight is adding these while still on high heat which dissipates aroma, so timing matters. The sensory cue is an immediate lift in smell and a glossy pudding that looks slightly thicker as it cools.