01 - Preheat the oven to 320°F.
02 - Pat the beef shanks dry and season generously with salt and freshly ground black pepper.
03 - Heat olive oil in a large Dutch oven or ovenproof pot over medium-high heat. Sear the beef shanks on all sides until deeply browned, about 3 to 4 minutes per side. Remove and set aside.
04 - Add chopped onion, sliced carrots, and celery to the same pot. Sauté for 5 minutes until softened. Add minced garlic and cook for an additional minute.
05 - Stir in the tomato paste and cook for another minute to deepen flavor.
06 - Pour in the red wine, scraping any browned bits from the bottom of the pot. Let it simmer for 2 minutes to reduce slightly.
07 - Return the seared beef shanks to the pot. Add the beef stock, rosemary, thyme, and bay leaves. Bring to a simmer, then cover and transfer to the oven.
08 - Braise in the oven for 3 hours, turning the shanks halfway through, until the meat is fork-tender and nearly falling off the bone.
09 - Remove herbs and bay leaves. Skim excess fat if desired and adjust seasoning with salt and pepper. Serve the beef shanks with the braised vegetables and spoon the sauce over the top.