Osso Buco is a traditional Italian dish made with braised veal shanks, cooked with vegetables, white wine, and broth. The meat becomes incredibly tender, and the marrow in the bone adds an extra depth of flavor to the dish. It is often garnished with gremolata and served with risotto or polenta.
Osso Buco, meaning “bone with a hole” in Italian, is a traditional dish from Milan that celebrates the art of slow cooking. At its heart are cross-cut veal shanks, each with a rich marrow-filled bone that gives the dish its distinctive depth of flavor. This isn’t a meal you rush, it’s a comforting, hearty dish that rewards patience with tender meat and a luscious sauce.
The magic of Osso Buco begins with browning the veal shanks to develop a deep, savory crust. They’re then slowly braised in a flavorful mixture of onions, carrots, celery, garlic, white wine, and stock. As the meat cooks low and slow, it becomes fork-tender, and the marrow melts into the sauce, adding a luxurious richness. Tomatoes are often added for brightness, creating a balanced sauce that’s both hearty and refined.
One of Osso Buco’s signature touches is the gremolata, a simple mixture of lemon zest, garlic, and fresh parsley sprinkled over the dish just before serving. This fresh, aromatic garnish cuts through the richness of the braise, adding a burst of brightness that elevates every bite.
Traditionally, Osso Buco is served with risotto alla Milanese, a saffron-infused risotto that complements the braised meat perfectly. The creamy risotto absorbs the flavorful sauce, making each spoonful an indulgent experience. However, it can also be paired with polenta, mashed potatoes, or even crusty bread for soaking up every drop of the delicious gravy.
What makes Osso Buco so special is its ability to bring people together. The slow-cooked aroma fills the home, building anticipation for a shared meal. It’s a dish that feels equally suited for a cozy family dinner or an elegant dinner party.
Whether enjoyed in its traditional form or with a modern twist, Osso Buco remains a shining example of how humble ingredients, treated with care and time, can transform into a masterpiece. With its tender meat, velvety sauce, and vibrant gremolata, it’s no wonder this Milanese classic continues to hold a cherished place in Italian cuisine.

Ingredients
- 4 pieces veal shanks about 1-1.5 inches thick, with bone
- 1/2 cup all-purpose flour for dusting
- 2 tbsp olive oil
- 1 cup onion chopped
- 1 cup carrot chopped
- 1 cup celery chopped
- 2 cloves garlic minced
- 1 cup white wine
- 2 cups beef broth
- 1 tsp thyme dried
- 1 tsp salt or to taste
- 1/2 tsp black pepper or to taste
- 2 tbsp parsley chopped, for gremolata
- 1 clove garlic minced, for gremolata
- 1 tsp lemon zest for gremolata
Instructions
- Pat the veal shanks dry with a paper towel and dust them with flour, shaking off any excess.
- In a large pot or Dutch oven, heat the olive oil over medium-high heat. Add the shanks and brown them on all sides, then remove and set aside.
- Lower the heat to medium, add onions, carrots, and celery to the pot, and sauté until they are softened, about 5-7 minutes.
- Add minced garlic and cook for an additional minute until fragrant.
- Pour in the white wine and scrape up any browned bits from the bottom of the pot. Let it simmer until slightly reduced.
- Return the veal shanks to the pot and add the beef broth, thyme, salt, and pepper. Bring to a simmer.
- Cover the pot and reduce the heat to low. Let it braise for about 2 hours, or until the meat is tender and falling off the bone.
- To make the gremolata, mix the parsley, garlic, and lemon zest in a small bowl.
- Serve the osso buco hot, garnished with gremolata.
Nutrition










What even is osso buco? I thought it was just a fancy name for stew. Had no idea it was veal!
So much time for a dish that was just okay. Not worth 2 hours in my opinion. Maybe im just not a fan of veal.
2 hours? That’s too long for meat if u ask me. I prefer simple stuff like spaghetti. Veal ain’t my thing either!
I totally understand your thoughts! Osso buco takes time, but the flavor is amazing if done right. Maybe try a faster recipe next time?
Ugh, I can’t even find veal shanks at my grocery store. Is there a substitute?
Why don’t you just use beef shank? It’s similar and way easier to find! Am I right?
You can try using pork shanks or even chicken thighs! They won’t taste the same but should work.
This osso buco recipe is legit! I added some mushrooms for fun, and it turned out great. Gonna impress my in-laws!
Mushrooms? Really? I don’t know about that. Might cover the veal taste. But good luck anyway!
Sounds delicious! Adding mushrooms was a clever twist. Best of luck with your in-laws!
I didn’t have white wine, used apple juice instead. Hmm… kind of weird taste, but my family ate it all! 😂
Apple juice? That’s different! I’m glad your family liked it, but I’m not sure I’d try that. 😅
This was amazing!!! First time trying veal and it turned out so tender. Will make again!
I tried this too and it ended up tough! I think I overcooked it. Any tips?
Instructions lost me at the gremolata part. What even is that? I just sprinkled parsley on top lol!
Too hard to make! I prefer simple stuff like spaghetti.
Was a bit tough, not sure if I cooked it long enough. But still tasty!!
This dish is so good! I never thought I could make something that tastes this gourmet. My family loved it!
Delicious! I added some mushrooms and used chicken broth instead, still turned out great!
That sounds like a great twist! I’m gonna try that with mushrooms next time. 🎉
Mushrooms? Hmm, not sure about that. The recipe is pretty specific for a reason. Might mess it up.
The gremolata was a great touch! Didn’t think it would make a diff, but it did.
I followed the recipe step by step but it turned out kinda dry. Maybe braising for too long?
I’m sorry to hear that! Maybe try reducing the cooking time a bit next time, or check the heat level. That can make a big difference in texture.
This is basically a Italian classic. Make sure to serve it with risotto, trust me.
Absolutely! Osso Buco is amazing, but have you tried it with polenta? That’s the real classic dish!
Risotto?? I always serve it with mashed potatoes instead. Works fine for me!
Too much garlic! My husband said it tasted like I was trying to ward off vampires 😂
Not a fan. The wine flavor was way too strong for my taste. I guess it’s just not for me.
Good recipe but confusing to follow. More pics would help 100%
Osso Buco? More like O-so-boring. Not my thing.
This was amazing! So tender and flavorful. Will definitely make this again.
So glad you loved it! It’s one of my favorites too. The gremolata really adds that fresh kick!
Meat fell off the bone for sure! But what the heck is gremolata? Never heard of that before.
Easy to follow! Mine took an extra hour tho. Still turned out great! 👍
Glad it turned out great! Even with the extra hour, it’s worth it for that tenderness. 🤤
An extra hour? Wow, I don’t know if I’d have the patience for that. Is it really worth it?
I made this for my family dinner, and it disappeared in minutes! A hit!
Glad to hear it was a hit! Osso Buco is always a crowd pleaser. Did you serve it with anything special?
I don’t get it. Why can’t we just grill the meat? This seems overly complicated.
Ugh. I don’t know what I did wrong but it was kinda bland. More spices next time.
I think I put too much garlic. It was a bit overpowering. But still good!
Srsly? A whole cup of white wine?! I can only taste the wine. It was alright, but not great.
I get your point about the wine… but it’s supposed to add depth. Maybe try cooking it a bit longer next time?
I used lamb shanks instead and it turned out good too. Just saying.
Wasnt sure about the wine part, but it made the dish incredible. Thanks for the tip!
Wine in food? Never thought it would be good. Might try it, but not sure about the taste. Why not use water instead?
I was skeptical about the wine too, but you just gotta trust the recipe! Glad it worked out for you!
Yummy 🙂 loved it!!
So glad you loved it! Osso Buco is such a comforting dish. Have you tried it with risotto?
Absolutely delicious! The meat was so tender and flavorful. I could eat this every day. 😊
This recipe fake? I thought Osso Buco was made with chicken. What a surprise.
Osso Buco is made with veal, not chicken! It’s a traditional Italian dish. Don’t get confused. 🙂
Hey, this seems too complicated for me. I usually just grill my meat. Is this really worth it?
I don’t like veal… Can you make this with beef instead? Also, what’s gremolata? Sounds fancy.
I tried this but ended up overcooking the meat. Any tips for not messing it up next time?
Maybe try cooking it on a lower heat and keep checking it? Overcooking can happen so easily with meat.
I dunno, I never really follow the time, just go by feel! If it looks done, I take it out. Don’t stress too much!
Absolutely loved this recipe! The veal was so tender and flavorful. Will definitely make again.
Yum! The gremolata really took it over the top! Will definitely make again.
Gremolata? What’s that? Just sounds fancy to me. Does it make a big difference?
I totally agree! The gremolata adds such a nice freshness. Can’t wait to try it myself!
Too much garlic for my taste. Couldn’t finish it. Next time, I’ll skip that.
I think garlic is the best part! Maybe just use less next time if it’s too much for you. 😊
Absolutely delicious! Perfect for a special occasion! 🥰
Yum!! 😍
This recipe is the real deal! My family loved it and it was so tender, thank you!
So glad to hear that! Osso Buco is one of my favorites too! ❤️
I had some doubts about the wine, but it turned out really good. Who knew you could cook with wine?
This was way too salty for my taste. Next time I’ll skip the added salt. Disappointed.
Why does it take TWO hours to cook?! Ain’t nobody got time for that. 😩
Yum! I added some mushrooms because I like them. Didn’t really change much tho.
This is fancy food! Can serve at a party or summthing. I loved it!
I dont like veal. can I use chicken instead? Also my mom said this is a waste of good meat.
I feel like its hard to screw up osso buco, but my first try was a disaster. Should’ve watched a video!