Italian · Dinner

Osso Buco alla Milanese

Cross-cut veal shanks braised until the meat collapses and the marrow turns to butter, finished with a raw hit of gremolata that cuts straight through the richness. Serve it over saffron risotto for the full Milanese experience.

Not yet ratedThis recipe has no ratings yet 2 hr 25 min total Serves 4 servings Hard
Jump to Recipe Method
Osso Buco alla Milanese — Italian dinner recipe, served and ready to eat

Photograph credit: BradyTavernOssoBuco2 by User:Promking · CC0 · Wikimedia Commons

Method

Tap a step to highlight it, or turn on Cook Mode for large type and step-by-step focus.

  1. Pat the shanks bone dry and season all over. Dust lightly with flour and shake off the excess — a thin coat browns; a thick one gums up the sauce.

  2. Heat the oil in a heavy casserole and brown the shanks hard on both sides, 4 minutes a side, working in batches so the pan never crowds. Set aside.

  3. Lower the heat, add the butter and soften the onion, carrot and celery for 10 minutes until sweet.

  4. Pour in the wine, scrape up every brown scrap from the base, and reduce by half.

  5. Return the shanks in a single layer. Add the tomatoes, stock, bay and salt — the liquid should come two-thirds of the way up the meat, no further.

  6. Cover and cook at 160°C / 320°F for 2 hours, turning the shanks at the halfway point, until a fork slides in with no resistance.

  7. Lift the shanks out and keep warm. If the sauce is thin, reduce it hard on the hob for 5 to 10 minutes until it coats a spoon.

  8. Mix the gremolata ingredients just before serving. Spoon sauce over the shanks and scatter the gremolata generously on top.

Chef’s Tips

  • Ask the butcher for centre-cut shanks with a wide marrow bone — the marrow is the best part and diners will dig for it.
  • Serve a small spoon alongside so guests can scoop the marrow out of the bone.
  • Make it a day ahead. The sauce sets, the flavours marry, and it reheats beautifully.

Common Substitutions & Variations

  • An eighth of a teaspoon of garlic powder per clove is the usual stand-in when you are out of fresh garlic — it will not caramelise the same way, but it carries the flavour.
  • Vegetable stock in place of the chicken stock makes this meat-free without changing the method, if that is what you need.
  • A dry vermouth keeps for longer than an open bottle of white wine and is the closer swap than a random white left in the fridge; for an alcohol-free version, use the same amount of stock with a squeeze of lemon.

Pairing Suggestions

  • Barolo or Barbaresco is the classic Piedmont match
  • Risotto alla Milanese is the canonical side
  • Panna cotta with a bitter orange sauce to finish

Storage & Reheating

Refrigerate in the sauce for up to 4 days or freeze for 3 months. Reheat gently, covered, at 150°C / 300°F for 30 minutes; boiling will make the meat stringy.

Common questions

How long does Osso Buco alla Milanese take to make?

About 2 hours 25 minutes in total — 25 minutes of preparation and 2 hours of cooking. The recipe serves 4.

What are the key tips for making Osso Buco alla Milanese?

Ask the butcher for centre-cut shanks with a wide marrow bone — the marrow is the best part and diners will dig for it. Serve a small spoon alongside so guests can scoop the marrow out of the bone. Make it a day ahead. The sauce sets, the flavours marry, and it reheats beautifully.

What should I serve with Osso Buco alla Milanese?

Barolo or Barbaresco is the classic Piedmont match; Risotto alla Milanese is the canonical side; Panna cotta with a bitter orange sauce to finish.

Can Osso Buco alla Milanese be made ahead or frozen?

Refrigerate in the sauce for up to 4 days or freeze for 3 months. Reheat gently, covered, at 150°C / 300°F for 30 minutes; boiling will make the meat stringy.

Is Osso Buco alla Milanese suitable for a special diet?

This recipe is high-protein and no added sugar. Those labels are checked against the ingredient list, so a dish is only marked when nothing in it contradicts the claim.

How many calories are in Osso Buco alla Milanese?

About 688 kcal per serving, with 58 g protein, 21 g carbohydrate and 38 g fat. The figures are calculated from the ingredient list and are an estimate.

Nutritional Highlights

Per serving, calculated from the ingredient list. Treat these as an estimate — brands and cuts vary.

688Calories
58gProtein
21gCarbs
38gFat
3gFibre
7gSugar
1120mgSodium

Reader Reviews

Cooked this? Leave a review

Your rating out of 5

Reviews are stored in your browser only — nothing is sent to a server.

Written and tested by Turab

One person, one kitchen — no test kitchen, no team. How every recipe on this site is checked before it goes up.