• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Recipe Index
    • Air Fryer
  • Side Dishes
  • Substitutes
  • About
  • Contact
  • Subscribe

ForkLiftKitchen

menu icon
go to homepage
  • Recipe Index
    • Air Fryer
  • Side Dishes
  • Substitutes
  • About
  • Contact
  • Subscribe
subscribe
search icon
Homepage link
  • Recipe Index
    • Air Fryer
  • Side Dishes
  • Substitutes
  • About
  • Contact
  • Subscribe
×
Home - Recipes - Dinner

Latest Updated: Mar 28, 2026 by Emily Dawson

Italian Osso Buco Milanese

↓ Jump to Recipe

You need 2.5 hours and one heavy pot. No marinating overnight, no complicated techniques, no babysitting a finicky braise.

Italian Osso Buco Milanese served on a plate

Veal shanks braise low and slow while you prep sides or make a simple brodo on the side. The bone marrow melts into the sauce while the meat falls off the bone.

This is what you make when you want something special on a Tuesday but don't want to stand over the stove for hours.

QUICK SUMMARY

Italian Osso Buco Milanese braises veal shanks in white wine and stock until fork-tender. Brown the meat deeply before adding liquid - those caramelized bits become the sauce base. Keep the simmer gentle at 180-190°F for 2 hours so the meat stays tender instead of turning tough.

⏱️Time Reality: 20 min prep, 2 hours hands-off braising, rests while you finish sides
🔥Critical First Move: Sear shanks 4-5 min per side until deep golden - skipping this means bland sauce
⚠️Watch Out: If liquid boils instead of simmers, meat turns stringy - keep heat low and steady

Table of Contents

Toggle
  • Why This Recipe Works
  • What You'll Need
    • Ingredient Details
  • Ingredient Swaps
  • What to Serve With It
  • Store and Reheat
  • Frequently Asked Questions
  • Italian Osso Buco Milanese
    • Method 
    • Tried this recipe?

Why This Recipe Works

Braising veal shanks at a gentle simmer breaks down collagen into gelatin while keeping the meat moist. The bone marrow melts into the sauce, adding richness you can't get from boneless cuts. For texture contrast that cuts through the richness, serve it with something fresh like salad.

Remember it later

Planning to try this recipe soon? Save it for a quick find later!

Quick Reference
⏱️
Prep Time
20 min
🔥
Cook Time
120 min
⏰
Total Time
140 min
🍽️
Servings
4 servings
📊
Difficulty
Medium
🏷️
Category
Main Dish
💡
Quick Tip
Brown meat well for deep flavor
🎯
Best For
Weeknight | Entertaining

What makes this work:

  • Searing creates a caramelized crust - those browned bits dissolve into the braising liquid and become the sauce base
  • Low simmer at 180-190°F tenderizes without drying - boiling tightens proteins and turns meat stringy
  • Wine deglazes the fond - scraping up those stuck-on bits adds layers of flavor you can't get from stock alone
  • Bone marrow enriches the sauce - as it melts during braising, it adds silky body and deep savory notes
  • Gremolata cuts richness - fresh lemon zest and parsley balance the heavy sauce right before serving
Quick Tip
Trim visible fat from shanks before browning to prevent greasy sauce - the marrow adds plenty of richness on its own.

What You'll Need

Ingredients for Italian Osso Buco Milanese

Shop for veal shanks with visible marrow in the center bone. The aromatics - carrots, celery, onion - form the classic soffritto base that builds flavor as they cook down in the braising liquid.

🍗
Protein
  • 4 veal shanks (bone-in, about 1.5 inches thick)
🥬
Aromatics
  • 2 carrots (diced)
  • 2 celery stalks (diced)
  • 1 onion (diced)
  • 4 garlic cloves (minced)
🥢
Braising Liquid
  • 1 cup dry white wine
  • 2 cups beef or veal stock
  • 2 tablespoon tomato paste
🫙
Gremolata
  • Zest of 1 lemon
  • ¼ cup fresh parsley (chopped)
  • 2 garlic cloves (minced)

Ingredient Details

  • Veal shanks
    Look for cuts 1.5 inches thick with visible marrow - thinner shanks dry out, thicker ones take longer to tenderize
  • Dry white wine
    Use something you'd drink - Pinot Grigio or Sauvignon Blanc work well, avoid sweet wines that caramelize oddly
  • Beef or veal stock
    Low-sodium lets you control salt as sauce reduces - full-sodium stock concentrates and can turn too salty
  • Tomato paste
    Adds color and balances acidity - skip it if you want a lighter, wine-forward sauce
  • Carrots and celery
    Dice small so they break down into the sauce - large chunks stay firm and distract from the meat
  • Lemon zest
    Use only the yellow outer layer, no white pith - pith tastes bitter and ruins gremolata
  • Fresh parsley
    Flat-leaf parsley has better flavor than curly - dried parsley won't work here, it lacks the fresh brightness

Ingredient Swaps

Beef shanks cost less than veal and work fine if you extend the braise by 30 minutes. The flavor shifts from delicate to beefy, but the method stays the same.

Common swaps that work:

  • Beef shanks instead of veal - slightly chewier texture, deeper flavor, needs 30 min longer braising time
  • Dry vermouth instead of white wine - similar acidity and flavor profile, slightly herbal notes
  • Vegetable stock instead of beef stock - lighter body but still works, loses some richness
  • Fresh diced tomatoes instead of tomato paste - more liquid in sauce, less concentrated color, simmer uncovered longer to reduce

Beef Shanks

Works for: Budget meals, deeper beef flavor, slightly longer braise

Skip if: You want traditional Milanese flavor or quicker cook time

Cornstarch for Thickening

Works for: Gluten-free diets, lighter coating on meat before searing

Skip if: You prefer traditional flour dredging or want deeper browning

Instructions

The shanks braise for 2 hours with minimal attention once they're in the pot. Check every 30 minutes to make sure the liquid stays at a gentle simmer - bubbles should barely break the surface. Pair this with easy potato wedges side to soak up extra sauce.

  1. Brown the shanks: Heat 2 tablespoon olive oil in a Dutch oven over medium-high heat. Pat shanks dry, season with salt and pepper. Sear each shank 4-5 min per side until deep golden brown. Remove and set aside.

  2. Cook the aromatics: Reduce heat to medium. Add diced carrots, celery, and onion to the same pot. Cook 5-7 min, stirring often, until vegetables soften and edges brown. Stir in minced garlic and tomato paste, cook 1 min.

  3. Deglaze and braise: Pour in white wine, scrape up browned bits from the bottom with a wooden spoon. Simmer 2-3 min until wine reduces by half. Add stock, return shanks to pot (liquid should come halfway up the sides). Bring to a simmer, cover, reduce heat to low.

  4. Simmer low and slow: Braise covered 1.5-2 hours, checking every 30 min to maintain gentle simmer at 180-190°F. Meat is done when it pulls apart easily with a fork. If sauce looks thin, remove lid last 15 min to reduce and thicken.

  5. Make gremolata and serve: Mix lemon zest, chopped parsley, and minced garlic in a small bowl. Let shanks rest 10 min off heat. Serve each shank with sauce spooned over top, sprinkle gremolata right before plating.

Golden Rule
If liquid boils instead of simmers, the meat toughens - keep heat low enough that only a few bubbles break the surface every few seconds.

What to Serve With It

Rich braised meat needs something to balance the plate - either a starchy side to soak up sauce or a bright element to cut through richness. For meal planning when serving hearty mains, check out these weeknight chicken dinner ideas that follow the same approach.

Side DishPrepWhy It WorksHow to Serve
Creamy polentaEasySoaks up sauce, mild flavor balances richnessSpoon polenta on plate, nestle shank on top, drizzle sauce over both
Simple risottoMediumClassic Milanese pairing, starchy texture holds sauceServe risotto alongside, use to mop up braising liquid
Steamed green beansEasyAdds crunch and freshness, cuts through heavy sauceToss beans with lemon juice, pile next to shank
Buttered mashed potatoesEasyNeutral base absorbs sauce without competing flavorsSpread potatoes on plate, place shank on top with extra sauce
Garlic breadEasyCrispy texture contrasts tender meat, perfect for soppingServe warm slices on the side for dipping in sauce

Three ways to serve it:

  • Traditional Milanese plate: Saffron risotto as base, shank on top, gremolata sprinkled over everything
  • Weeknight version: Serve over buttered egg noodles or mashed potatoes with steamed vegetables on the side
  • Entertaining presentation: Place shank on creamy polenta, spoon sauce around (not over) to show the golden crust, garnish with fresh gremolata
Best Pick
Creamy polenta is the fastest side that still feels special - it cooks in 10 min while the meat rests and soaks up every drop of sauce.

Store and Reheat

Osso Buco reheats well because the braising liquid keeps the meat moist. Store shanks and sauce together so the meat doesn't dry out in the fridge. Add a crispy potato on the side when reheating for texture contrast.

MethodTimeBest For
🍳 Stovetop10-15 min on low heatBest texture retention, easiest to control moisture
🔥 Oven20 min at 325°F coveredEven reheating for multiple servings without drying meat
📦 Microwave3-4 min medium powerSingle servings when you need speed over texture

For best results when storing:

  • Refrigerate shanks submerged in braising liquid in shallow airtight container - exposed meat dries out within a day
  • Let dish cool to room temp before refrigerating to prevent condensation that waters down sauce
  • Freeze in portions with sauce poured over meat - freeze up to 3 months, thaw overnight in fridge before reheating
  • Skim solidified fat from surface before reheating - chill sauce, fat hardens on top and lifts off easily
  • Add splash of stock when reheating if sauce thickened too much - start with 2 tablespoon and add more as needed

Frequently Asked Questions

How long to cook Osso Buco at simmer?

Braise covered at a gentle simmer (180-190°F) for 1.5-2 hours. The meat is done when it pulls apart easily with a fork and the marrow has melted into the sauce.

Can I make Osso Buco ahead and reheat?

Yes, it reheats well and flavor improves overnight. Store shanks submerged in sauce, refrigerate up to 4 days. Reheat gently on stovetop or in 325°F oven until warmed through, make gremolata fresh right before serving.

What goes well with Osso Buco Milanese?

Serve with creamy polenta, saffron risotto, or buttered mashed potatoes to soak up sauce. Add steamed green beans or a simple salad for brightness that cuts through the richness.

How do I know when Osso Buco is tender and done?

The meat should pull apart easily with a fork without resistance. If it still feels firm or requires sawing with a knife, continue braising and check every 15 minutes until tender.

Can I use beef shanks instead of veal shanks?

Yes, beef shanks work but need 30 minutes longer braising time and have a deeper, beefier flavor. The texture is slightly chewier than veal but still tender when cooked properly.

Italian Osso Buco Milanese served on a plate

Italian Osso Buco Milanese

No ratings yet
Italian Osso Buco Milanese braises veal shanks in white wine and stock until fork-tender, creating a rich sauce from caramelized meat and bone marrow. A gentle low simmer ensures the meat stays moist and tender, while gremolata adds brightness to balance the dish. This recipe is ideal for a special weeknight meal with minimal hands-on time.
Print Recipe Pin Recipe
Prep Time 20 minutes mins
Cook Time 2 hours hrs
Total Time 2 hours hrs 20 minutes mins
Servings: 4 servings
Course: Dinner, Main Dish
Cuisine: Italian
Ingredients Equipment Method Notes

Ingredients
  

  • 4 veal shanks bone-in, about 1.5 inches thick with visible marrow, trimmed of excess fat
  • 2 carrots diced
  • 2 stalks celery diced
  • 1 onion diced
  • 4 cloves garlic minced, divided
  • 1 cup dry white wine such as Pinot Grigio or Sauvignon Blanc
  • 2 cups beef or veal stock low-sodium preferred
  • 2 tablespoon tomato paste optional, adds color and balances acidity
  • 1 unit lemon zest zest of 1 lemon, yellow part only
  • 0.25 cup fresh parsley flat-leaf, chopped

Equipment

  • Dutch oven Used for searing and braising veal shanks
  • Wooden spoon For scraping up browned bits during deglazing

Method
 

  1. Heat 2 tablespoon olive oil in a Dutch oven over medium-high heat. Pat veal shanks dry, season with salt and pepper. Sear each shank 4-5 minutes per side until deep golden brown. Remove and set aside.
    4 veal shanks
  2. Reduce heat to medium. Add diced carrots, celery, and onion to the same pot. Cook 5-7 minutes, stirring often, until vegetables soften and edges brown. Stir in minced garlic and tomato paste, cook 1 minute.
    2 carrots, 2 stalks celery, 1 onion, 4 cloves garlic, 2 tbsp tomato paste
  3. Pour in white wine and scrape up browned bits from the bottom with a wooden spoon. Simmer 2-3 minutes until wine reduces by half. Add beef or veal stock and return shanks to the pot so liquid comes halfway up the sides. Bring to a simmer, cover, then reduce heat to low.
    1 cup dry white wine, 2 cups beef or veal stock, 4 veal shanks
  4. Braise covered 1.5-2 hours, checking every 30 minutes to maintain a gentle simmer at 180-190°F. The meat is done when it pulls apart easily with a fork. Remove the lid during the last 15 minutes if sauce needs thickening.
    4 veal shanks
  5. Mix lemon zest, chopped parsley, and remaining minced garlic in a small bowl. Let shanks rest 10 minutes off heat. Serve each shank with sauce spooned over top and sprinkle gremolata just before plating.
    1 unit lemon zest, 0.25 cup fresh parsley, 4 cloves garlic

Notes

  • Brown the meat well to develop deep flavor base for sauce.
  • Keep the heat low enough to maintain a gentle simmer; boiling toughens the meat.
  • Trim visible fat from shanks before browning to prevent greasy sauce-marrow provides enough richness.

Tried this recipe?

Let us know how it was!

More Dinner

  • Best frozen Mexican food ranked on ForkliftKitchen
    Best Frozen Mexican Food for Burrito Nights and Easy Dinners
  • Tuna Steaks with Sesame Crust served on a plate
    Tuna Steaks with Sesame Crust
  • General Tso Chicken served on a plate
    General Tso Chicken
  • Stuffed Chicken Breast with Spinach served on a plate
    Stuffed Chicken Breast with Spinach

Primary Sidebar

ForkliftKitchen recipe developer

Welcome!

Recipe Developer · 12+ Yr Kitchen Veteran

I'm the recipe developer behind this site, focused on practical, well-tested dishes and smart ingredient swaps. Every recipe is written to be clear, reliable, and easy to make at home.

650+ Recipes
12+ Yrs Exp.
3x Tested
Our Story →

As Featured In

Allrecipes

TASTE OF HOME

Food52

HUFFPOST

Yahoo! Life

Our Editorial Standards

  • ✓ Every recipe tested at least 3 times before publishing
  • ✓ Substitutes verified by real kitchen trials, not guesswork
  • ✓ Reviewed for accuracy by our editorial team
  • ✓ Updated regularly with seasonal info and reader feedback

Most Popular

  • Creamy Lemon Shrimp Linguine
    Creamy Lemon Shrimp Linguine
  • Creamy Garlic Mushroom Chicken
    Creamy Garlic Mushroom Chicken
  • Sesame Ginger Chicken Noodle Bowls
    Sesame Ginger Chicken Noodle Bowls
  • Baked Lemon Herb Fish Fillets
    Baked Lemon Herb Fish Fillets
  • Veggie Loaded Fried Rice
    Veggie Loaded Fried Rice
  • Spicy Garlic Shrimp Stir Fry
    Spicy Garlic Shrimp Stir Fry

Join 8,000+ Home Cooks

Weekly Kitchen Tips

Easy recipes, smart substitutes, and real cooking shortcuts — every Thursday.

Subscribe Free →


Side Dishes

  • What to Serve With Asian Salmon? 15 Best Side Dishes
    What to Serve With Asian Salmon? 15 Best Side Dishes
  • Side Dishes for Strawberry Spinach Salad
    15 Best Side Dishes for Strawberry Spinach Salad
  • Sides for Grilled Cauliflower Steaks to Complete the Meal
    15 Sides for Grilled Cauliflower Steaks to Complete the Meal
  • 15 Sides To Serve With Calabacitas
    15 Best Sides for Calabacitas – Mexican-Inspired Favorites


Substitutes

  • 7 Best Substitutes for Hot Sauce in Marinades & Stir-Fries
    7 Best Substitutes for Hot Sauce in Marinades & Stir-Fries
  • 9 Best Substitutes for Butter in Baking and Cooking
  • 7 Best Substitutes for Tagliatelle for Italian Pasta Dishes
    7 Best Substitutes for Tagliatelle for Italian Pasta Dishes
  • 7 Best Substitutes for Udon Noodles in Asian Stir-Fries
    7 Best Substitutes for Udon Noodles in Asian Stir-Fries


Browse by Topic

  • Side Dishes320
  • Substitutes785
  • Dinner163
  • Air Fryer77
  • Taste Profiles484
  • Food Storage123


Reader Reviews

★★★★★

"Finally a food blog that tells you exactly why a substitute works instead of just listing options."

— Sarah M., via email

★★★★★

"The side dish recommendations are so specific — saved my dinner party twice this month."

— James R., Pinterest comment

★★★★★

"I trust this site more than most because they actually test everything. You can tell."

— Priya K., blog comment

Footer

↑ Back to Top

Forklift Kitchen

We do the heavy lifting so you can enjoy the cooking. Tested recipes, smart substitutes, and perfect pairings—built for real home cooks.

Content

  • Recipes
  • Substitutes
  • What to Serve With
  • Blog

Company

  • About Us
  • Contact
  • Subscribe

Legal

  • Privacy Policy
  • Terms of Service

As an Amazon Associate I earn from qualifying purchases.

© 2026 Forklift Kitchen.

Rate This Recipe

Your vote:




A rating is required
A name is required
An email is required