← BlogJune 28, 2026

How to Make the Perfect Risotto alla Milanese

Italian · Medium · 40 min · 4 servings

Gluten-FreeVegetarian-Adaptable
Advertisement
Risotto alla Milanese

Risotto alla Milanese is a luxurious saffron-infused rice dish from the heart of Milan, celebrated for its golden color and creamy texture. It is a true icon of Lombard cuisine that pairs beautifully with braised meats or stands confidently on its own.

Why this recipe works

This Risotto alla Milanese recipe has been crafted to deliver restaurant-quality results in your home kitchen. At just 40 minutes from start to finish, it fits perfectly into a busy schedule without sacrificing flavor. Each serving comes in at 480 calories with 12g of protein, making it a balanced choice for any meal.

Advertisement

What you will need

This recipe uses 6 simple ingredients that you can find at any grocery store:

  • 320 g Arborio rice
  • 0.5 g saffron threads
  • 1200 ml warm chicken broth
  • 80 g unsalted butter
  • 1 medium white onion, finely diced
  • 80 g Parmigiano-Reggiano, freshly grated

Step by step instructions

Step 1: Bloom the Saffron

Dissolve the saffron threads in a small cup with 3 tablespoons of warm broth and let it steep for at least 10 minutes until deeply golden. This step is essential because it unlocks the full color and aroma of the saffron before it enters the rice.

Step 2: Soften the Onion

Melt half the butter in a wide, heavy-bottomed pan over medium-low heat. Add the diced onion and cook gently for 6 to 8 minutes, stirring frequently, until completely soft and translucent but not colored.

Step 3: Toast and Build the Risotto

Add the Arborio rice to the pan and toast for 2 minutes, stirring constantly until the grains become slightly translucent at the edges. Begin adding the warm broth one ladle at a time, stirring continuously and waiting until each ladle is absorbed before adding the next. Continue for about 18 minutes.

Step 4: Finish with Mantecatura

Remove the pan from heat and stir in the saffron liquid, remaining butter, and Parmigiano-Reggiano vigorously. Cover and rest for 2 minutes, then serve immediately on warm plates with a wave motion so the risotto spreads gently.

Advertisement

Easy substitutions

Missing an ingredient? Here are some swaps that work perfectly:

  • chicken broth → vegetable broth for a vegetarian version
  • Arborio rice → Carnaroli rice for a slightly firmer and creamier result

Common mistakes to avoid

Watch out for these pitfalls that can affect your results:

  • Adding cold broth directly to the pan, which shocks the rice and ruins the creamy texture
  • Stirring too infrequently and allowing the rice to stick and cook unevenly

Nutrition facts

Per serving: 480 calories, 12g protein, 58g carbs, 18g fat, 2g fiber.

Ready to cook?

Get the interactive recipe with adjustable servings, built-in timers, and ingredient checklist.

View full recipe →
Advertisement