Classic Osso Buco with Saffron Risotto is a comforting Italian dinner that delivers slow-braised tenderness, deep wine-rich sauce, and restaurant-style presentation. This osso buco recipe braises veal shanks with onion, carrot, celery, garlic, and red wine before serving them over creamy saffron risotto made with Arborio rice and Parmesan.
1½cupsdry red wineCabernet Sauvignon or Merlot work well
2½-3cupsbeef brothlow sodium
2bay leaves
1small bundlefresh rosemary and thymetied together
salt and freshly cracked black pepperto taste
Saffron Risotto
1½cupsArborio rice
4cupschicken brothkept warm
2tablespoonsunsalted butter
1small onionfinely chopped
½cupdry white wine
1tablespoonolive oil
¼teaspoonsaffron threadsabout 0.2 grams
½cupgrated Parmesan cheese
salt and freshly cracked black pepperto taste
Instructions
Pat the veal shanks dry with paper towels. Season all over with salt and freshly cracked black pepper. Lightly dredge in flour, shaking off excess.
Heat the olive oil in a large Dutch oven over medium-high heat. Add the veal shanks and sear for 4-5 minutes per side, until deeply golden brown. Remove and set aside.
In the same pot, add onion, celery, and carrots. Sauté for 5-7 minutes, stirring occasionally, until softened. Stir in tomato paste and cook for 2-3 minutes, stirring frequently, until it deepens in color and caramelizes slightly. Add the garlic and cook for 1 more minute until fragrant.
Pour in the red wine, scraping up any browned bits from the bottom of the pot. Let it simmer for 3-4 minutes to reduce slightly.
Return the veal shanks to the pot. Add beef broth, bay leaves, and the bundled rosemary and thyme. The liquid should come halfway up the veal shanks.
Cover and braise in the oven at 325°F (160°C) for 2½ to 3 hours, turning the shanks halfway through. Check at 2½ hours to see if the veal is fork-tender and falling off the bone.
In a large skillet or saucepan, heat the butter and olive oil over medium heat. Add the chopped onion and sauté until translucent, about 3-4 minutes.
Add Arborio rice and stir for 1-2 minutes until lightly toasted. Pour in the white wine and stir until absorbed.
Stir in the saffron threads and begin adding the warm chicken broth, one ladle at a time, stirring constantly until each addition is absorbed before adding the next. Continue for about 18-20 minutes, until the risotto is creamy and tender.
Stir in grated Parmesan, season with salt and pepper, and remove from heat.
Spoon saffron risotto onto plates. Place a braised veal shank on top, spooning extra braising sauce and vegetables over the meat. Sprinkle with fresh parsley and serve.
Notes
Cooking Notes:Braising slowly allows the connective tissue in the veal shanks to break down, creating tender meat and a rich sauce. The vegetables soften into the braising liquid, helping build deep flavor in the sauce. Stirring the risotto gradually while adding warm broth encourages the rice to release starch and develop its creamy consistency.Tips for Best Results:
Sear the veal shanks well before braising to build flavor in the sauce.
Use warm broth when cooking risotto so the rice cooks evenly.
Add broth gradually while stirring so the risotto becomes creamy rather than soupy.
Allow the braised veal to rest briefly before serving so the sauce thickens slightly.
How to Know It’s Ready:The veal should be fork-tender and nearly falling off the bone. The risotto should look creamy and flow slowly on the plate rather than appearing stiff.