
Preheat oven to 325°F (160°C). Season veal shanks generously with salt and pepper. Dredge in flour, shaking off excess.
In a large Dutch oven or oven-safe pot, heat olive oil over medium-high heat. Sear veal shanks on all sides until browned. Remove from pot and set aside.
Add onion, carrots, and celery to the pot and cook until softened, about 8-10 minutes. Add garlic and cook for another minute until fragrant.
Pour in white wine, scraping up any browned bits from the bottom of the pot. Allow the wine to reduce slightly, about 2-3 minutes.
Return veal shanks to the pot. Add beef broth, tomato paste, bay leaf, and thyme. Bring to a simmer, then cover the pot.
Transfer the pot to the preheated oven and braise for 2.5-3 hours, or until the veal is very tender and falling off the bone.
While the Osso Buco is braising, prepare the gremolata: In a small bowl, combine parsley, lemon zest, and garlic. Mix well.
Once the Osso Buco is done, remove from the oven. Skim off any excess fat from the surface of the sauce. Season the sauce with salt and pepper to taste.
Serve the Osso Buco hot, garnished with gremolata. Accompany with creamy polenta or risotto.