Arroz con Leche or Mexican Rice Pudding is a rich creamy dessert. This authentic Mexican family recipe is perfect for Cinco de Mayo or any time of year you are craving a sweet comfort food dessert recipe.
This delicious dessert is pure Mexican comfort food. This recipe was given to me by a friend in Mexico and it’s her family’s recipe. There is no question why this classic Arroz con Leche is such a perfect dessert. The texture of the rice grains is soft but not mushy. The creamy texture is so satisfying.
This really should be called Arroz con LecheS because like Tres Leches cake it has three types of milk: whole milk, evaporated milk and sweetened condensed milk. the milk mixture is what gives this creamy homemade dessert its great flavor.
It has a light caramel-y flavor as thought brown sugar was added (no extra sugar is used). This delicious recipe is perfect of cold days served warm or served chilled.
The sweet flavors of this tasty recipe will satisfy any sweet tooth.
Recipe Ingredients Notes
This easy dessert is made with pantry ingredients you probably have on hand!
Long grain white rice. You’ll use 2 cups of uncooked rice, rinsed under cold water in a fine mesh strainer until the water runs clear.
Cinnamon sticks. Two cinnamon sticks are added to the rice and water to simmer adding a light cinnamon flavor.
Whole milk. This is one of the three milks used and you’ll need 2 cups of whole milk.
Evaporated milk. One 12-ounce can of regular (not fat free) evaporated milk.
Sweetened Condensed Milk. One 14-ounce can will be the third milk type and adds the perfect sweetness to the rice. No additional sugar is used! You’ll find this on the baking aisle of the grocery store.
Ground cinnamon. Add a sprinkle when serving the rice pudding.
How to make Arroz con Leche – Step-by-Step
Detailed instructions in the printable recipe card at the end of the post.
STEP 1. Rinse the rice
Start by rinsing the white rice in a fine mesh strainer or mine mesh sieve under cold water until the water runs clear.
Add the rice to a large heavy saucepan or pot.
STEP 2. Cook the rice
Add 8 cups of cold water (photo 1) and the cinnamon sticks (photo 2) to the saucepan with the rice (photo 1).
Bring to a boil over medium heat to medium-high heat. Boil uncovered (stirring occasionally to ensure the rice doesn’t stick to the bottom of the pan) until the rice becomes tender (about 15 minutes).
Drain and discard any excess liquid. Discard the cinnamon sticks. Return the rice to the large saucepan (photo 3).
STEP 3. Add the milks and cook
Add the whole milk, evaporated milk and sweetened condensed milk (photos 4-6). Bring to a boil over medium-high heat, reduce to low heat and allow to cook until thickened (20-25 minutes).
Stir every few minutes from the bottom of the pan to the top. The rice mixture on the bottom will thicken first; the stirring keeps it from sticking to the bottom of the pan and incorporated the thicker long grain rice from the bottom. You should see no separated liquid (it will no longer look watery; it will look creamy).
Remove from heat. The rice pudding will continue to thicken as it cools.
STEP 4. Cool
Allow the rice pudding recipe to sit in the pan for 15 minutes. Transfer to individual serving containers or a large airtight container. Cover or seal and fully chill. Serve cold or room temperature with a sprinkle of ground cinnamon on top.
Add some vanilla extract. If you love vanilla flavor still in 2 teaspoons toward the end of cooking.
Add some raisins. Raisins are a very popular addition to this dessert. Stir in 3/4-1 cup golden raisins after the pudding is cooked before letting it sit for 15 minutes (the last step before chilling).
How to Store it
For best results store in an airtight container or serving dishes covered with plastic wrap, in the refrigerator for up to 4 days (it probably won’t last that long!). Keeping it covered helps keep the top soft and from developing a ‘skin’ from being exposed to the air.
More recipes you’ll love!
Arroz con Leche (Mexican rice pudding)
- 2 cups long grain white rice
- 8 cups water
- 2 cinnamon sticks
- 2 cups whole milk
- 1 14-ounce can sweetened condensed milk
- 1 12-ounce can evaporated milk
- ground cinnamon optional – sprinkle on when serving
- Place the rice in a fine mesh strainer or sieve and run under cold water until the water runs clear.
- Place rinsed rice into a medium-size heavy saucepan with 8 cups of water and the 2 cinnamon sticks.
- Bring to a boil over medium-high heat and boil uncovered for about 15 minutes, stirring occassionally, until the rice is tender. Use a pliable spatula for stirring and scrape the bottom to ensure the rice does not stick.Remove from heat.
- Strain and discard any excess liquid. Remove and discard the cinnamon sticks.Return the rice to the saucepan.
- Add the whole milk, evaporated milk and sweetened condensed milk. Bring to a boil over medium-high heat, then reduce heat to low. Allow to simmer until the mixture thickens and the liquid is almost completely absorbed (you should not see excess amounts of liquid; the mixture will look creamy); 20-25 minutes. Stir gently every few minutes to bring the thickened rice mixture up from the bottom of the pan to the top. This will help the liquid absorb too.
- Turn off the heat and allow the rice pudding to cool in the pan for 15-20 minutes (it will continue to thicken). Then transfer to individual serving containers or a large container; seal (or cover with plastic wrap) and chill in the refrigerator until fully cooled. It will thicken even more.
- Serve chilled or at room temperature with a sprinkle of ground cinnamon top.
I made a plant based version of this with soy milk. I find that the soymilk has the most neutral taste as opposed to nut and oat milks. It came out so good. If you’ve never tried it with soy milk, soy milk has a slightly thicker consistency with a bit more body to it.
Toni Dash says
Thanks for this Kaitlin. We have several types of milk (dairy and plant) in our refrigerator at all times and I always love to hear from others who have swapped in alternative ingredients. Thanks for taking the time in leaving your thoughts!