Osso buco is one of the most celebrated braises in all of Italian cooking — a dish of cross-cut veal shanks simmered low and slow until the meat surrenders from the bone in silky, collagen-rich strands. Born in the kitchens of Milan, this braised veal shank recipe transforms a tough, inexpensive cut into something profoundly elegant. The marrow melts into the sauce. The vegetables dissolve into a velvety base. A final shower of gremolata — raw lemon zest, garlic, and parsley — lifts everything with a burst of brightness that makes you reach for another bite before you have finished the first.
Prep Time: 25 minutes | Cook Time: 2 hours 30 minutes | Servings: 4
Difficulty: Medium | Calories: ~520 per serving
What Makes Osso Buco Special?
Osso buco stands apart from other braised meat dishes because of one element: the bone marrow. The name itself translates to “bone with a hole,” referring to the hollow marrow cavity at the center of each cross-cut veal shank. During the long braise, that marrow slowly melts into the surrounding liquid. As a result, it creates a sauce with a richness and body that no amount of butter or cream can replicate. Diners in Milan consider the marrow the best part of the dish. They scoop it out with a tiny spoon or spread it on crusty bread.
The braising process itself is a masterclass in collagen transformation. Veal shanks contain abundant connective tissue that is tough and chewy when raw. However, hours of gentle heat convert that collagen into gelatin. This gelatin gives the braising liquid a natural thickness and a silky, lip-coating texture that feels luxurious on the palate. You cannot rush this process. Low temperature and patience are the only path to true tenderness in osso buco.
What truly completes the dish is the gremolata scattered on top at the last moment. This raw garnish of lemon zest, garlic, and parsley acts as a counterweight to all that richness. The bright citrus cuts through the heavy braising sauce. Meanwhile, the raw garlic adds a sharp bite that wakes up the palate. Together with the tender veal and its glossy sauce, gremolata turns osso buco into a dish of remarkable balance — deeply comforting yet surprisingly refreshing.
Choosing the Right Veal Shanks
The quality of your veal shanks determines the quality of your osso buco. Not all shanks are equal, so knowing what to look for at the butcher counter makes a real difference. Here are the key factors to consider when shopping.
- Hind shank (best choice): The rear leg shank has more meat, a rounder shape, and a larger marrow bone than the front shank. It holds together better during braising and gives you the most impressive presentation on the plate. Ask your butcher specifically for hind shanks cut 1.5 inches thick.
- Front shank (good alternative): These are smaller and slightly less meaty, but they still produce excellent osso buco. Front shanks are often more affordable. You may need one extra piece to match the yield of hind shanks.
- Beef shank (budget option): If veal is unavailable or too expensive, beef shanks work as a substitute. They deliver a bolder, more robust flavor. Keep in mind that beef shanks require a longer braising time — typically 3 to 3.5 hours — because the connective tissue is denser. The result is still delicious, though the texture is less delicate than veal.
- Thickness matters: Shanks should be cut between 1.5 and 2 inches thick. Thinner slices fall apart during braising and lose the dramatic bone-in presentation. Thicker slices take longer to cook and may not braise evenly. A consistent thickness across all pieces ensures even cooking.
Ingredients for Osso Buco
For the Braised Veal:
- 4 veal shanks (ossobuco cut), about 1.5 inches thick (350g each)
- 1/2 cup all-purpose flour for dredging
- 3 tablespoons extra virgin olive oil
- 3 tablespoons unsalted butter, divided
- 1 medium yellow onion, finely diced
- 2 medium carrots, finely diced
- 2 celery stalks, finely diced
- 4 cloves garlic, minced
- 1 cup dry white wine (Pinot Grigio or Soave)
- 1 can (14 oz) whole San Marzano tomatoes, crushed by hand
- 2 cups beef or veal stock
- 2 bay leaves
- 3 sprigs fresh thyme
- Salt and freshly ground black pepper to taste
For the Gremolata:
- Zest of 1 lemon (use a microplane for fine zest)
- 2 tablespoons fresh flat-leaf parsley, finely chopped
- 1 clove garlic, finely minced
Optional Additions:
- 1 strip orange zest (adds a subtle citrus depth to the braise)
- 2 anchovy fillets (dissolve into the soffritto for hidden umami)
- 1 tablespoon tomato paste (for deeper color and concentrated tomato flavor)
Pro tip: Tie each veal shank around its circumference with kitchen twine before searing. The meat contracts during braising and can separate from the bone. A simple loop of twine holds everything together, giving you a clean, restaurant-worthy presentation when the dish reaches the table. Remove the twine just before serving.
Step-by-Step Instructions
Step 1: Prepare and Sear the Veal Shanks
1 Remove the veal shanks from the refrigerator 30 minutes before cooking. Cold meat hitting a hot pan drops the temperature and prevents proper browning. Pat each shank thoroughly dry with paper towels — moisture is the enemy of a good sear. Season generously on both sides with salt and pepper. Then dredge each shank lightly in flour, shaking off any excess. The thin flour coating promotes a crispier crust and also helps thicken the braising liquid later.
Heat the olive oil and 1 tablespoon of butter in a large, heavy Dutch oven over medium-high heat. When the butter foams and the foam begins to subside, lay the shanks in the pot. Do not crowd them — work in batches of two if needed. Sear for 4 to 5 minutes per side without moving them. You want a deep, mahogany-brown crust, not a pale golden tan. This crust is the foundation of your sauce’s flavor thanks to the Maillard reaction. Transfer the seared shanks to a plate and set aside.

Step 2: Build the Soffritto
2 Reduce the heat to medium. Add the remaining 2 tablespoons of butter to the same Dutch oven — all those browned bits on the bottom are flavor gold. Once the butter melts, add the diced onion, carrots, and celery. This trio is called soffritto in Italian cooking. It forms the aromatic backbone of nearly every braise. Cook for 6 to 8 minutes, stirring occasionally, until the vegetables soften and the onion turns translucent.
Add the minced garlic and stir for about 30 seconds. You want the garlic fragrant but not browned. Burnt garlic turns bitter and will taint the entire dish. If you are using the optional anchovy fillets, add them here. They dissolve completely into the vegetables within a minute, leaving no fishy taste — only a deep, savory umami foundation that makes the sauce taste more complex.

Step 3: Deglaze with White Wine
3 Pour the white wine into the Dutch oven. It will sizzle immediately as it meets the hot surface. Use a wooden spoon to scrape the bottom of the pot, lifting every caramelized bit stuck to the surface. These browned fond particles dissolve into the wine and carry an enormous amount of concentrated flavor into the sauce. Let the wine simmer and reduce by about half. This takes 3 to 4 minutes. The reduction cooks off the raw alcohol while concentrating the wine’s acidity and fruitiness.
Choose a dry, unoaked white wine for this step. Pinot Grigio, Soave, and Vermentino all work beautifully. Avoid sweet or heavily oaked wines, as they clash with the delicate balance of the braise. A good rule is simple: if you would not drink it, do not cook with it.

Step 4: Braise Low and Slow
4 Add the crushed San Marzano tomatoes, beef stock, bay leaves, and thyme sprigs to the pot. Stir everything together gently. Now nestle the seared veal shanks back into the Dutch oven in a single layer. The braising liquid should reach about two-thirds up the sides of the shanks — not fully submerged. If the meat is completely covered, you are boiling it rather than braising it, and the result will be dry and stringy instead of tender and moist.
Bring the liquid to a gentle simmer on the stovetop. Then cover the Dutch oven with a tight-fitting lid and transfer it to a preheated oven at 325 degrees Fahrenheit (165 degrees Celsius). Braise for 2 to 2.5 hours. Resist the urge to check constantly — every time you lift the lid, heat and moisture escape. Check once at the 90-minute mark and gently turn the shanks over. The osso buco is done when a fork slides through the thickest part of the meat with almost no resistance. The connective tissue should have dissolved into the sauce, leaving the meat incredibly tender.

Step 5: Make the Gremolata
5 While the veal braises, prepare the gremolata. Combine the finely grated lemon zest, chopped flat-leaf parsley, and minced garlic in a small bowl. Mix them together with a fork. The gremolata should be prepared no more than 30 minutes before serving. Fresh lemon zest loses its volatile oils quickly, and the garlic oxidizes and turns harsh if it sits too long.
Use a microplane or fine grater for the lemon zest. You want only the bright yellow outer layer, not the bitter white pith underneath. Similarly, mince the garlic as finely as possible so it distributes evenly across each serving. This garnish is raw, so the texture and fineness matter. Every bite of osso buco should carry a tiny burst of citrus, herb, and garlic.

Step 6: Finish and Serve
6 Carefully remove the Dutch oven from the oven. Transfer the tender veal shanks to a serving platter or individual warmed plates. Remove and discard the bay leaves and thyme stems from the sauce. Taste the braising liquid. If the flavor feels diluted, place the pot on the stovetop over medium heat. Simmer uncovered for 5 to 10 minutes until the sauce concentrates and coats the back of a spoon. Adjust the seasoning with salt and pepper.
Spoon the rich sauce generously over each veal shank. Top with a generous pinch of the fresh gremolata. Serve immediately alongside risotto alla milanese, creamy polenta, or crusty bread for soaking up every last drop of that extraordinary braising liquid. Place a small spoon on the table so your guests can scoop out the prized bone marrow — it is the hidden treasure of every osso buco.

Expert Tips for Perfect Osso Buco
Do Not Skip the Sear
Searing the veal shanks before braising is the single most important step for flavor. The Maillard reaction creates hundreds of new flavor compounds on the surface of the meat that dissolve into the braising liquid over the next two hours. Without a proper sear, your osso buco sauce will taste flat and one-dimensional. Take the time to get a deep brown crust on every side. Patience here pays off in flavor later.
Use a Dutch Oven, Not a Slow Cooker
While a slow cooker can technically braise veal shanks, a Dutch oven in the oven produces better results. The heat surrounds the pot from all sides, creating even cooking. In contrast, a slow cooker heats primarily from the bottom, which can lead to uneven texture. Furthermore, you cannot sear the meat directly in most slow cookers, so you lose the convenience of a one-pot process. A heavy, enameled cast-iron Dutch oven is the ideal vessel for osso buco.
Keep the Braising Liquid at the Right Level
The braising liquid should come about two-thirds up the sides of the shanks. If the meat is fully submerged, you are boiling it, which makes the exterior dry and stringy even though it is surrounded by liquid. Braising relies on a combination of moist steam and direct liquid contact to break down collagen gently. The exposed top of the meat benefits from the steam trapped under the lid. This balance produces the most tender, flavorful osso buco.
Make It a Day Ahead
Osso buco tastes even better the next day. After braising, let the dish cool completely and refrigerate it overnight. The fat solidifies on the surface, making it easy to remove for a cleaner sauce. More importantly, the flavors continue to meld and deepen as the meat sits in the braising liquid. Reheat gently the next day, and the result will surpass the freshly made version. This also makes osso buco an excellent dinner party dish because the hard work happens the day before.
Osso Buco Styles Compared
Italian braised meat dishes vary significantly by region and tradition. Here is how osso buco alla milanese compares to other Italian braising traditions.
| Dish | Region | Protein | Key Characteristics |
|---|---|---|---|
| Osso Buco alla Milanese | Lombardy (Milan) | Veal shanks | White wine, tomato, gremolata, served with risotto |
| Osso Buco in Bianco | Lombardy (older style) | Veal shanks | No tomato, only white wine and broth, lighter flavor |
| Brasato al Barolo | Piedmont | Beef chuck | Braised in Barolo red wine, rich and wine-forward |
| Stracotto | Emilia-Romagna | Beef round | Slow-braised in red wine with tomato and aromatics |
| Peposo | Tuscany | Beef shank | Heavy black pepper, Chianti wine, minimal vegetables |
Serving Suggestions
Osso buco is a rich, saucy main course that demands an accompaniment capable of absorbing its extraordinary braising liquid. Choosing the right side dish and beverage transforms a great braise into a complete, unforgettable meal.
Classic Accompaniments:
- Risotto alla milanese: The legendary Milanese pairing. Golden saffron rice soaks up the braising juices and creates one of Italy’s most celebrated combinations. This is the traditional choice for a reason.
- Creamy polenta: Soft, buttery polenta provides a neutral canvas that lets the osso buco sauce shine. It is the preferred side in many northern Italian homes. Use stone-ground polenta for the best texture and corn flavor.
- Crusty bread: A thick slice of rustic Italian bread is the simplest way to enjoy every drop of the braising sauce. Tear it into pieces and soak up the liquid directly from the plate.
- Mashed potatoes: Although not traditional Italian, creamy mashed potatoes work beautifully with osso buco. Their mild flavor absorbs the complex sauce without competing with the veal.
Beverage Pairings:
- Nebbiolo (red wine): A Barolo or Barbaresco from Piedmont has the tannic structure and acidity to stand up to the rich braised veal. This is the classic wine match for osso buco.
- Barbera d’Alba (red wine): A slightly lighter option with bright acidity and cherry fruit. Barbera cuts through the richness of the sauce without overwhelming the delicate veal flavor.
- Amarone della Valpolicella (red wine): For a bolder pairing, this rich Veneto wine matches the depth of the braise. Its dried-fruit character complements the slow-cooked flavors beautifully.
- Sparkling water with lemon: For a non-alcoholic option, mineral water with a squeeze of lemon echoes the citrus notes of the gremolata and cleanses the palate between bites.
Storage and Reheating
Refrigerator: Store leftover osso buco in an airtight container with the braising sauce for up to 3 days. As mentioned earlier, this dish improves with time. The flavors deepen overnight, and the collagen in the sauce sets into a rich jelly that liquefies beautifully when reheated.
Freezer: Osso buco freezes exceptionally well for up to 3 months. Place the shanks and sauce in a freezer-safe container or heavy-duty zip-lock bags. Thaw overnight in the refrigerator before reheating. The gelatin-rich sauce retains its silky texture even after freezing, which makes osso buco one of the best braises to batch-cook.
Reheating: Reheat gently on the stovetop over medium-low heat, or place the covered container in a 325 degree Fahrenheit oven for 20 to 30 minutes until warmed through. Add a splash of stock if the sauce has thickened too much. Always make the gremolata fresh — never freeze or refrigerate it, as it loses all its brightness.
Common Mistakes to Avoid
1. Crowding the Pan During Searing
Placing all four veal shanks in the pot at once drops the temperature dramatically. Instead of searing, the meat steams and turns grey. Grey meat means no Maillard reaction and no flavor foundation for the sauce. Sear in batches of one or two, giving each shank plenty of space. The extra five minutes of effort makes an enormous difference in the final dish.
2. Braising at Too High a Temperature
High heat causes the proteins in the veal to seize and squeeze out moisture. Consequently, the meat becomes dry and tough even after hours of cooking. Osso buco should braise at a gentle, barely bubbling simmer — around 325 degrees Fahrenheit in the oven. If you braise on the stovetop, keep the flame low enough that only a few lazy bubbles break the surface every second.
3. Forgetting the Gremolata
Serving osso buco without gremolata is like serving a salad without dressing. The dish is edible, but incomplete. That small handful of lemon zest, parsley, and garlic does more than decorate. It provides the acid and freshness that balances the heavy, rich braising sauce. Without it, the dish feels one-dimensional. Always prepare the gremolata fresh, and add it generously at the table.
4. Using Low-Quality Stock
The braising liquid becomes the sauce, so every ingredient in it matters. Thin, watery stock produces a thin, watery sauce. Use a rich, gelatinous beef or veal stock with good body. Homemade stock is ideal. If using store-bought, choose a brand with a short ingredient list and visible gelatin when chilled. The stock should jiggle like jelly in the refrigerator, not slosh like water.
Frequently Asked Questions
What cut of meat is used for osso buco?
Osso buco uses cross-cut veal shanks sliced about 1.5 inches thick. The name literally translates to “bone with a hole” in Italian, referring to the marrow cavity at the center of each shank. For the best results, ask your butcher for hind leg shanks. These are meatier and have a rounder shape than front leg shanks. The marrow inside the bone melts during braising and enriches the sauce with incredible depth and body.
Can I make osso buco with beef shanks instead of veal?
Yes, beef shanks are a perfectly acceptable substitute. They are more affordable and easier to find in most grocery stores. However, beef has a stronger, more robust flavor than veal. Additionally, beef shanks require a longer braising time — typically 3 to 3.5 hours instead of 2 to 2.5 hours. The collagen in beef connective tissue is denser and needs more time to break down. The final dish will taste slightly different, but it will still be delicious and satisfying.
What is gremolata and why is it added to osso buco?
Gremolata is a raw Italian condiment made from three simple ingredients: lemon zest, minced garlic, and finely chopped flat-leaf parsley. It is scattered over osso buco just before serving. The purpose is to provide a sharp, bright contrast to the rich, long-braised meat and sauce. Specifically, the lemon zest cuts through the heaviness. Meanwhile, raw garlic adds a pungent kick. Finally, the parsley contributes a clean herbal note. Together, they transform osso buco from merely rich into something balanced and complex.
What should I serve with osso buco?
The classic Milanese pairing is risotto alla milanese — saffron-infused risotto that soaks up the braising juices beautifully. Creamy polenta is another traditional Italian choice that works equally well. For less traditional options, try mashed potatoes, egg noodles, or thick slices of crusty bread. The key is to choose something that absorbs the rich sauce, since the braising liquid is one of the best parts of the dish.
How do I know when osso buco is done?
Your veal is ready when a fork slides into the thickest part of the shank with virtually no resistance. The meat should be pulling slightly away from the bone but not yet falling apart completely. At the same time, the connective tissue and collagen will have dissolved into the braising liquid, giving the sauce a naturally thick, glossy consistency. This transformation typically takes 2 to 2.5 hours at 325 degrees Fahrenheit. If the meat still feels firm at 2 hours, continue braising in 15-minute intervals until tender.
Can I make osso buco ahead of time?
Absolutely — in fact, many chefs recommend it. Braising the osso buco a day ahead allows the flavors to deepen and meld overnight. After cooking, let the dish cool to room temperature, then refrigerate it in the Dutch oven or a sealed container. The next day, scrape off the solidified fat from the surface for a cleaner sauce. Reheat gently on the stovetop or in a 325 degree oven. Prepare the gremolata fresh just before serving so it retains its bright, aromatic punch.
Variations and Adaptations
Osso Buco in Bianco (Without Tomato):
The original osso buco recipe from 19th-century Milan contained no tomato at all. Tomatoes were a later addition. To make the historic version, simply omit the canned tomatoes and add an extra cup of stock. The result is a lighter, more delicate braise where the veal flavor takes center stage. This version pairs even better with risotto alla milanese because the cleaner sauce does not compete with the saffron.
Lamb Shank Osso Buco:
Lamb shanks respond beautifully to the osso buco treatment. Their rich, slightly gamey flavor stands up to the wine and aromatics. Use the same braising technique but reduce the cooking time to about 2 hours, as lamb shanks are typically smaller than veal. Replace the gremolata with a mint-based version — fresh mint, lemon zest, and garlic — to complement the lamb’s natural affinity for mint.
Pork Shank Osso Buco:
Cross-cut pork shanks are an affordable and flavorful alternative. They are fattier than veal, which produces a richer, more unctuous sauce. Braise them for about 2.5 hours at the same temperature. Consider adding fennel seeds or a star anise pod to the braising liquid to complement the pork’s sweetness. The gremolata works perfectly with pork, or try adding a pinch of orange zest alongside the lemon for extra complexity.
Slow Cooker Adaptation:
If you do not have a Dutch oven, you can adapt the recipe for a slow cooker. Sear the shanks and build the soffritto in a regular skillet first, then transfer everything to the slow cooker. Cook on low for 7 to 8 hours or on high for 4 to 5 hours. The result will not match the oven-braised version in complexity, but it is a convenient alternative for busy days. You may need to reduce the sauce on the stovetop afterward, as slow cookers do not concentrate liquids the way an oven does.
The Cultural Significance of Osso Buco
Osso buco is the soul of Milanese home cooking. While risotto alla milanese appears on restaurant menus as a refined first course, osso buco anchors the family table as the main event. In Milan, it is the dish that grandmothers teach their grandchildren to make. It fills the kitchen with an aroma that signals comfort, warmth, and the promise of a long, leisurely meal. The dish embodies the Italian principle that the best cooking requires only time, good ingredients, and respect for tradition.
Historically, osso buco represents the Italian genius for making the most of every part of the animal. Shanks are a working muscle — tough, full of sinew, and cheap compared to prime cuts like tenderloin or rib chops. Yet through the alchemy of slow braising, this humble cut becomes one of the most luxurious dishes in the Italian repertoire. Slowly, the collagen transforms into silk. Meanwhile, the marrow melts into liquid gold. What begins as an affordable cut of meat ends as a centerpiece worthy of any celebration.
Furthermore, the pairing of osso buco with risotto alla milanese is so deeply ingrained in Milanese culture that ordering one without the other at a traditional trattoria would raise eyebrows. Together, they represent the complete Milanese culinary identity: precision in technique, restraint in ingredients, and a deep understanding that food is not just sustenance but an expression of place and history. When you make osso buco at home, you participate in a tradition that stretches back centuries to the kitchens of Lombardy.
Conclusion
Osso buco is proof that patience in the kitchen creates extraordinary results. A proper sear, a well-built soffritto, quality stock, and two hours of gentle braising — these are the pillars of a dish that turns an affordable veal shank into something genuinely magnificent. The gremolata at the end is not optional. It is the finishing touch that brings balance to all that depth and richness. With this recipe, you have everything you need to create an authentic Milanese osso buco that will impress anyone at your table.
Ready to explore more Italian and European classics? Browse our full collection of European dishes for recipes like risotto alla milanese, beef bourguignon, and carbonara. If you try this osso buco recipe, leave a rating and tell us how it turned out.





