# Osso Buco alla Milanese

> A classic Milanese osso buco — fork-tender veal shanks braised in wine, tomatoes and stock until deeply savory — served over a creamy saffron risotto. This stovetop main offers rich, comforting flavors and a bright gremolata to cut through the braise.

Canonical URL: https://www.topshelf.recipes/recipes/osso-buco-alla-milanese-saffron-risotto

## Author

Jake Woods

https://www.topshelf.recipes/chef/jake-woods

Published: June 26, 2026

Last Updated: September 28, 2026

## About This Recipe

Osso Buco alla Milanese is an exercise in patience that rewards you with a braise whose flavor seems to accumulate layer by layer: caramelized browning on the shanks gives savory depth, the wine and tomatoes bring bright acidity, and long, gentle cooking turns connective tissue into silk. The marrow-packed cross-cut bone is the dish’s showpiece — it enriches the sauce and offers a gelatinous, buttery note that pairs beautifully with a saffron risotto. Texturally, you want a contrast between the unctuous braised meat and the slightly toothsome grains of Arborio; the gremolata is essential for cutting the richness with lemon and parsley snap.

This version leans on balance rather than fuss: equal parts white wine, stock and crushed tomatoes keep the braise lively without becoming overly tomato-heavy, and finishing by reducing the braising liquid to a glaze concentrates flavor while preserving the shank’s tenderness. It’s ideal for a weekend dinner or a small dinner party where you can braise low and slow, then bring the pot to the table for dramatic plating. Make the gremolata just before serving so its brightness is fresh, and don’t rush the risotto — the saffron needs time to perfume the rice and bind the plate together.

## Recipe Information

- Prep Time: 25 minutes
- Cook Time: 120 minutes
- Total Time: 145 minutes
- Servings: 2
- Difficulty: Medium
- Category: Italian

## Ingredients

### Season, flour and brown the shanks

- 4 pieces Veal shanks (with bone; about 1.6 kg / 3.5 lb total)
- 1 1/2 tsp (total) Kosher salt and freshly ground black pepper
- 1/2 cup All-purpose flour (for dusting)
- 5 tbsp (combined) Olive oil and unsalted butter (for browning)

### Sauté the aromatics

- 1 cup diced Mirepoix (1 large onion, 1 carrot, 1 celery stalk), finely diced
- 2 cloves Garlic, finely chopped

### Deglaze and assemble the braise

- 4 cups (combined) Braising liquids: dry white wine, beef stock and crushed tomatoes (1 cup wine + 2 cups stock + 1 cup tomatoes)

### Make the saffron risotto

- 1 cup rice (plus 3 cups hot stock, pinch saffron, 1 tbsp butter, 1/3 cup Parmesan) Saffron risotto: Arborio rice, pinch saffron, and hot stock; finish with butter & grated Parmesan

### Finish and serve with gremolata

- 1/4 cup chopped parsley Gremolata: fresh parsley, lemon zest and a touch of garlic (finely chopped)

## Ingredient Guide

### Veal shanks (with bone; about 1.6 kg / 3.5 lb total)

Cross-cut shanks from a young calf (classic for osso buco); they include a marrow-filled bone and lots of connective tissue that becomes rich and gelatinous when long-braised. Veal is common in Italian and French cooking and has a milder, more delicate flavor than beef. You’ll find them at a butcher, a well-stocked supermarket meat counter, or specialty meat markets; a good substitute is beef shank or lamb shank, which give similar braising results though a heartier flavor.

### pinch saffron

Saffron is the dried stigmas of the Crocus sativus flower, prized in Mediterranean, Middle Eastern, and South Asian cuisines for its subtle floral‑honey aroma and golden color. It’s one of the most expensive spices by weight and is used sparingly to perfume rice, risottos, and stews. Buy it from reputable spice shops, specialty grocery stores, or online; if you need a budget substitute for color only, use a pinch of turmeric or safflower, but note that neither replicates saffron’s unique aroma and flavor.

### Gremolata: fresh parsley, lemon zest and a touch of garlic (finely chopped)

Gremolata is a classic Italian chopped herb condiment (originating in Milan) typically served with braised meats like osso buco to add a bright, citrusy, garlicky finish. It tastes fresh and zesty—parsley’s green herbiness plus lemon oil and sharp raw garlic. It’s usually made fresh at home with common ingredients, but if you need an alternative, a quick chimichurri or a simple mix of chopped parsley, lemon zest, and minced garlic will provide a very similar effect.

## Instructions

### 1. Season, flour and brown the shanks

Pat the veal shanks dry and season all over with salt and pepper. Lightly dust each shank with flour, shaking off excess. Heat the olive oil and butter in a large heavy pot or Dutch oven over medium-high heat and brown the shanks on all sides until richly caramelized, working in batches to avoid crowding; transfer browned shanks to a plate.

### 2. Sauté the aromatics

Reduce heat to medium and add the diced mirepoix to the pot, stirring to pick up the browned bits from the bottom. Cook until the vegetables are softened and beginning to color, 6–8 minutes, then add the chopped garlic and cook 30–60 seconds more until fragrant.

### 3. Deglaze and assemble the braise

Pour in the white wine to deglaze, scraping up any fond, and reduce by half. Stir in the beef stock and crushed tomatoes, bring the liquid to a gentle simmer, then nestle the browned shanks back into the pot so they are partially submerged. Cover the pot, reduce heat to low and maintain a gentle simmer.

### 4. Braise until tender

Cook gently for about 1½ to 2 hours, or until the meat is fall-apart tender and pulls easily from the bone. Occasionally spoon pan juices over the shanks; toward the end, remove the shanks and increase heat to reduce the sauce slightly if you prefer a thicker glaze.

### 5. Make the saffron risotto

While the braise finishes, warm 3 cups of stock with the saffron threads in a saucepan. In a separate skillet, melt 1 tbsp butter, add the Arborio rice and toast for 1–2 minutes. Ladle warm saffron-infused stock a ladleful at a time, stirring frequently and allowing each addition to be absorbed before adding more; cook until creamy and al dente, about 18–20 minutes. Stir in the remaining butter and grated Parmesan, season to taste.

### 6. Finish and serve with gremolata

Reheat the shanks briefly in the reduced sauce if needed, then spoon saffron risotto onto plates or a serving platter, top with a veal shank and spoon sauce over. Sprinkle each portion with the fresh gremolata for brightness and serve immediately.

## Nutrition

Estimated nutrition per serving (1 serving):

- Calories: 2065 kcal
- Protein: 143.7 g
- Carbohydrates: 143.3 g
- Fat: 93.5 g
- Saturated Fat: 38.8 g
- Fiber: 6.5 g
- Sugar: 13.1 g
- Added Sugars: 0 g
- Cholesterol: 617.5 mg
- Sodium: 5247.5 mg
- Potassium: 3195.8 mg
- Calcium: 423.7 mg
- Iron: 13.1 mg
- Vitamin D: 1 mcg

## Tips

### Brown in Batches

Avoid crowding the pot so the shanks caramelize properly; wet meat steams instead of browns, losing that essential fond for flavor.

### Save the Fond

When you sauté the mirepoix, scrape the browned bits from the bottom of the pan with the wine — that fond is the backbone of the braising liquid.

### Maintain a Simmer

Keep the braise at a gentle simmer rather than a rolling boil to break down collagen slowly and prevent toughening the exterior.

### Infuse the Stock

Bloom saffron threads in a ladle of hot stock for 5–10 minutes before adding; this extracts maximum aroma and color for the risotto.

### Finish with Reduction

For a glossy, clingy sauce, remove the shanks near the end and boil the braising liquid until it thickens slightly, then return the meat to coat.

## Variations and Substitutions

### Beef Shank Substitute

If veal is unavailable, use beef shanks; increase braising time to 2½–3 hours until the meat is equally tender and flakes from the bone.

### Tomato-Light Version

Reduce crushed tomatoes to ½ cup and add a splash of balsamic or a spoonful of tomato paste for color without overt sweetness, keeping the dish closer to classic Milanese flavors.

### Slow Cooker Method

Brown the shanks on the stove, then transfer the aromatics and liquids to a slow cooker and cook on low for 6–8 hours; finish the sauce by reducing it on the stovetop.

### Gluten-Free Option

Skip the flour dusting or use rice flour or cornstarch for a light coating; dredging is optional but helps thicken the final sauce.

## Notes

This dish shines for leisurely weekend dinners or small dinner parties — the braise can be made a day ahead to deepen the flavor. Home cooks will love the contrast between the luxuriously soft veal and the aromatic saffron risotto.

### Storage and Make-Ahead

Store cooled osso buco and sauce in an airtight container in the refrigerator for up to 3 days; the flavors often deepen overnight. You can freeze the braised meat and sauce (without risotto) for up to 3 months — thaw overnight in the fridge before reheating gently in a low oven or a covered skillet. Reheat risotto by loosening with hot stock or butter over low heat, stirring until creamy again.

### Serving Suggestions

Spoon a generous bed of saffron risotto on warm plates, nestle the shank on top, and spoon glossy sauce over the meat; serve the gremolata at the last minute for brightness. For sides, roasted broccolini or lemony sautéed spinach complement the dish’s richness; pair with a medium-bodied Italian red like Chianti or a mineral white such as Verdicchio to match the braise’s acid and the risotto’s saffron notes.

## Frequently Asked Questions

### How do I know when the shanks are done?

They’re ready when the meat pulls away from the bone easily and a fork meets almost no resistance; internal temperature is less useful than the tactile test for braises.

### Can I make the braise a day ahead?

Yes — the flavors improve after resting; gently reheat the shanks in their sauce over low heat and finish by reducing the sauce briefly before serving.

### What should I do with the bone marrow?

Scoop it out and spread it on toasted bread as an amuse-bouche, or stir it into the risotto for an extra layer of richness and umami.

### My sauce is too thin — how do I thicken it?

Remove the shanks and simmer the sauce over medium-high heat until it reduces to a glossy, spoon-coating consistency; avoid adding flour at the end which can taste raw.

### Can I use a red wine instead of white?

Yes — red wine will deepen the braise and work well with beef shanks, but choose a lighter red (like Chianti) to avoid overpowering the delicate veal flavor.

## Related Recipes and Guides

- [Sicilian Sfincione Pizza](https://www.topshelf.recipes/recipes/sicilian-sfincione-pizza)
- [Neapolitan Pizza at Home](https://www.topshelf.recipes/recipes/neapolitan-pizza-at-home)
- [Cacio e Pepe Pasta](https://www.topshelf.recipes/recipes/cacio-e-pepe-pasta)
- [Sicilian Arancini Rice Balls](https://www.topshelf.recipes/recipes/sicilian-arancini-rice-balls)
- [Stovetop Skillet Pizza](https://www.topshelf.recipes/recipes/stovetop-skillet-pizza)
- [Zuppa di Pesce](https://www.topshelf.recipes/recipes/zuppa-di-pesce-italian-fish-stew)
- [Gluten-Free Weeknight Grilling Plan](https://www.topshelf.recipes/articles/gluten-free-weeknight-grilling-plan)
- [Low-Fat Grill Swaps for Big Flavor](https://www.topshelf.recipes/articles/low-fat-grill-swaps-big-flavor)
- [DIY Edible Monster Eyes Candy](https://www.topshelf.recipes/articles/diy-edible-monster-eyes-candy)
