Osso Buco Milanese Classic

Featured in: Oven & Stovetop Recipes

Osso Buco Milanese showcases slow-braised veal shanks cooked to tender perfection in a rich tomato and vegetable sauce. The dish is enhanced with a bright gremolata made from lemon zest, parsley, and garlic, adding fresh contrast to the deep flavors. Ideal for an elegant yet comforting main course, this slow-cooked dish pairs exceptionally well with saffron risotto, polenta, or creamy mashed potatoes. The method involves browning the veal, sautéing aromatics, deglazing with white wine, and slow oven braising until fork tender. A gluten-free option can be made by substituting the flour used for dredging.

Updated on Tue, 30 Dec 2025 10:41:00 GMT
Tender Osso Buco served with creamy polenta, the veal shanks glistening in a rich tomato sauce. Save to Pinterest
Tender Osso Buco served with creamy polenta, the veal shanks glistening in a rich tomato sauce. | simplebissara.com

The first time I made osso buco, I burned the gremolata—charred it black while distracted by a phone call—and somehow it still tasted magnificent. That night taught me that this Milanese masterpiece isn't just about technique; it's about the profound comfort of meat so tender it surrenders to a fork, swimming in a glossy tomato sauce that tastes like hours of patient care. Now whenever I braise those cross-cut veal shanks, I'm transported to that kitchen moment when I realized a small mistake couldn't ruin something this beautifully forgiving.

I made this for my mother's birthday dinner on a cold autumn evening, and she went quiet after the first bite—the kind of quiet that means everything is right. The kitchen had been filled with that particular smell of caramelized meat and wine reduction for hours, and by the time we sat down, even the air felt ceremonial. Watching her clean her plate, I understood why this dish has endured for centuries in the Italian kitchen.

Ingredients

  • Veal shanks (350 g each, cross-cut, bone-in): The thick cross-sections reveal that gorgeous marrow bone in the center, which enriches the braising liquid as it cooks—don't skip this detail, as it's where the real flavor lives.
  • All-purpose flour: Just a light dredge creates a subtle crust that helps seal in juices and thickens the sauce naturally; use gluten-free if needed.
  • Olive oil and unsalted butter: The combination gives you high heat browning from the oil while the butter adds a gentle richness that pure oil can't achieve.
  • Onion, carrots, and celery: This holy trinity is your flavor foundation—chopping them finely means they soften into the sauce, becoming almost invisible but absolutely essential.
  • Garlic: Mince it small and add it near the end of sautéing so it perfumes without bitterness.
  • Dry white wine: Choose something you'd actually drink; harsh wine makes harsh sauce, so spend the extra moment choosing well.
  • Diced tomatoes with juice: Canned is honest and reliable here—the tomatoes have already given their best to the can, and that juice is liquid gold for braising.
  • Beef or veal stock: Homemade is gorgeous, but quality store-bought works beautifully; this is what carries flavor into every corner of the dish.
  • Tomato paste: A small amount concentrates tomato essence without overshadowing the meat; cook it for a minute to deepen its sweetness.
  • Bay leaves and thyme: Dried herbs work here because time extracts their oils slowly and evenly.
  • Lemon zest: Split this between the braise and the gremolata—it's the thread that ties the entire dish together with brightness.
  • Fresh parsley, garlic, and lemon zest for gremolata: This isn't a garnish; it's a flavor reset that wakes up your palate and your plate in the final moment.

Instructions

Product image
Mix batters, prep ingredients, grate vegetables, and store leftovers easily during baking and everyday cooking.
Check price on Amazon
Prepare and Season Your Shanks:
Pat the veal shanks completely dry with paper towels—this matters more than you'd think for browning. Season them generously with salt and pepper, then dredge lightly in flour, shaking off the excess so you have just a whisper of coating.
Brown the Meat with Care:
Heat your oil and butter together in a large Dutch oven over medium-high heat until it's shimmering and smells toasted. Brown each shank on all sides, about 3 to 4 minutes per side—you're looking for deep golden color that will carry flavor through the braise.
Build Your Flavor Base:
In that same pot with all the browned bits clinging to the bottom, add your chopped onion, carrots, celery, and minced garlic. Sauté until everything softens and the kitchen smells like a Milanese home, about 6 minutes.
Deepen the Sauce:
Stir in tomato paste and let it sit for a minute, stirring occasionally—this toasting step concentrates its sweetness. Pour in your white wine and scrape up all those precious browned bits from the pot bottom with a wooden spoon; they contain weeks of flavor.
Build Your Braising Liquid:
Add the diced tomatoes with their juice, your stock, bay leaves, dried thyme, and half the lemon zest. Stir everything together and taste the raw liquid—it should taste like a savory soup that's inviting but not yet perfect.
Return the Meat and Begin the Braise:
Nestle the browned shanks back into the pot in a single layer, spooning sauce over them so they're partially submerged. Bring the liquid to a gentle simmer on the stovetop, then cover and transfer to a preheated 160°C (325°F) oven for 2 hours, until the meat is so tender a fork slides through like butter.
Prepare Your Finishing Touch:
While the meat braises, finely chop your fresh parsley and mince a single garlic clove, then combine with the remaining lemon zest. This gremolata is your final flourish—keep it separate until serving.
Finish and Serve:
When the veal is tender, carefully transfer the shanks to a serving platter. Skim any excess fat from the surface if you like, then simmer the sauce on the stovetop for a few minutes to concentrate it slightly if it seems thin. Spoon the glossy sauce over the shanks and finish with a generous sprinkle of gremolata, which will brighten everything with citrus and herbaceous freshness.
Product image
Mix batters, prep ingredients, grate vegetables, and store leftovers easily during baking and everyday cooking.
Check price on Amazon
Save to Pinterest
| simplebissara.com

Years later, I made this for a dinner party and watched a guest close their eyes after the first bite—that same quiet moment my mother had given me. That's when osso buco stopped being a recipe and became a reminder that the best cooking happens when you're willing to wait, to listen, to let time and gentle heat do what rushing never could.

Why This Dish Changed How I Cook

Making osso buco taught me that some of the most elegant dishes come from simple patience rather than complexity. The magic isn't in having a closet full of exotic ingredients or executing twelve quick steps—it's in choosing quality ingredients, browning them properly, then trusting the oven to work while you pour a glass of wine and breathe. This single meal transformed how I think about cooking for people I love; it showed me that time invested is always time well spent.

Serving and Pairing Suggestions

Osso buco needs a starch that won't compete with its rich sauce but will cradle it beautifully. Saffron risotto (Risotto alla Milanese) is the traditional choice—the two dishes were made for each other, with the rice's subtle spice echoing the lemon brightness. Creamy mashed potatoes are equally lovely if you want something simpler, or a soft polenta that tastes like butter and yields to a spoon.

Kitchen Wisdom and Adjustments

This recipe is far more forgiving than its elegant appearance suggests, which is part of why it's become a favorite for dinners when I want to impress without perfecting. If your veal seems thicker than expected, give it an extra 20 minutes in the oven—meat varies, and tenderness matters more than a timer. If you find beef shanks instead of veal at your market, use them without hesitation; they'll braise beautifully and may even develop deeper, earthier flavors.

  • Make this a day ahead if your schedule allows—the flavors deepen overnight, and you can simply reheat it gently before serving, skimming any solidified fat from the surface.
  • If your finished sauce seems too thin, simmer it uncovered on the stovetop while you set the table, letting it reduce and concentrate.
  • The gremolata can be made up to 2 hours ahead and stored in a small bowl covered with plastic wrap, but assemble it only when you're ready to plate—this preserves its fresh, citrusy punch.
Product image
Whisk eggs, batters, sauces, and cream smoothly for baking, cooking, and everyday meal prep.
Check price on Amazon
A close-up view of flavorful Osso Buco with meltingly soft veal and vibrant gremolata garnish. Save to Pinterest
A close-up view of flavorful Osso Buco with meltingly soft veal and vibrant gremolata garnish. | simplebissara.com

This is the dish I return to when I need to remember why I love cooking, and why feeding people matters. It asks for your attention but rewards it with tenderness, depth, and moments worth remembering.

Recipe FAQs

What cut of meat is best for this dish?

Veal shanks, cross-cut and bone-in, are ideal for their rich flavor and collagen that breaks down during braising, resulting in tender meat.

Can I use beef instead of veal?

Yes, beef shanks are a suitable substitute. Adjust cooking time as beef may require longer braising to become tender.

How is gremolata prepared?

Gremolata is a fresh mixture of chopped parsley, minced garlic, and lemon zest, added just before serving to brighten and complement the rich sauce.

What sides pair well with this dish?

Saffron risotto, polenta, or creamy mashed potatoes complement the hearty flavors and provide a balanced meal.

Is there a gluten-free option?

Yes, using gluten-free flour for dredging the veal shanks makes the dish suitable for gluten-free diets.

Osso Buco Milanese Classic

Tender braised veal shanks in tomato and vegetable sauce finished with a fresh gremolata.

Prep Time
25 minutes
Cook Time
135 minutes
Overall Time
160 minutes
Recipe by Ava Turner


Skill Level Medium

Cuisine Type Italian

Portions 4 Number of Servings

Dietary Info None specified

What You'll Need

Veal and Seasoning

01 4 veal shanks (approximately 12.3 oz each, cross-cut, bone-in)
02 Salt and freshly ground black pepper, to taste
03 1/3 cup all-purpose flour (gluten-free flour as needed) for dredging

Vegetables

01 2 tablespoons olive oil
02 2 tablespoons unsalted butter
03 1 large onion, finely chopped
04 2 carrots, diced
05 2 celery stalks, diced
06 4 garlic cloves, minced

Braising Liquid

01 1 cup dry white wine
02 1 can (14 oz) diced tomatoes with juice
03 1 1/2 cups beef or veal stock
04 2 tablespoons tomato paste
05 2 bay leaves
06 1 teaspoon dried thyme
07 Zest of 1 lemon (reserve half for gremolata)

Gremolata

01 2 tablespoons fresh flat-leaf parsley, finely chopped
02 1 garlic clove, minced
03 Zest of 1 lemon (from reserved portion)

How to Make It

Direction 01

Prepare Veal Shanks: Pat the veal shanks dry and season generously with salt and black pepper. Dredge each shank lightly in flour, shaking off any excess.

Direction 02

Brown the Veal: Heat olive oil and butter in a large Dutch oven over medium-high heat. Brown the veal shanks on all sides, about 3 to 4 minutes per side, then transfer to a plate.

Direction 03

Sauté Vegetables: Add onion, carrots, celery, and garlic to the same pot. Sauté until softened, approximately 6 minutes.

Direction 04

Add Tomato Paste and Deglaze: Stir in tomato paste and cook for 1 minute. Deglaze the pot with white wine, scraping up any browned bits from the bottom.

Direction 05

Incorporate Braising Liquid: Add diced tomatoes with their juice, stock, bay leaves, thyme, and half of the lemon zest. Stir to combine.

Direction 06

Braise Veal: Return the veal shanks to the pot in a single layer, spooning sauce over the top. Bring to a simmer, cover, and transfer to a preheated oven at 325°F. Braise for 2 hours or until the meat is fork-tender.

Direction 07

Prepare Gremolata: Mix finely chopped parsley, minced garlic, and the reserved lemon zest to create the gremolata garnish.

Direction 08

Finish and Serve: Remove the shanks from the pot. Skim excess fat from the sauce if necessary, and simmer to thicken if desired. Spoon sauce over the shanks and sprinkle gremolata on top before serving.

Tools Needed

  • Large Dutch oven or heavy ovenproof pot
  • Tongs
  • Chef's knife
  • Cutting board
  • Wooden spoon

Allergy Details

Always review all ingredients for allergens and check with a healthcare provider if uncertain.
  • Contains dairy (butter) and gluten (use gluten-free flour if necessary)

Nutrition Details (per serving)

Nutritional data is just for reference. Please don't treat it as medical or dietary advice.
  • Calories Count: 590
  • Fats: 31 g
  • Carbohydrates: 17 g
  • Proteins: 54 g