Pat the lamb shanks dry with paper towels, then season generously with salt and pepper. Heat olive oil in a Dutch oven over medium-high heat until shimmering. Sear the shanks in batches, about 4 minutes per side, until deeply browned and crusty. Remove and set aside.
Add chopped onions, carrots, and crushed garlic to the same pot. Cook over medium heat, stirring occasionally, until vegetables soften and release a fragrant aroma, about 5 minutes, with edges slightly caramelized.
Pour the entire bottle of red wine into the pot off heat, scraping up any browned bits from the bottom with a wooden spoon. Bring to a gentle simmer and let it reduce by half, about 10 minutes, until syrupy and fragrant.
Stir in tomato paste, then nestle the seared lamb shanks back into the pot, ensuring they are partially submerged in the wine and vegetable mixture. Add sprigs of rosemary and pour in the stock. Bring to a gentle simmer.
Cover the Dutch oven with a lid and transfer it to a preheated oven at 160°C (320°F). Braise for 2.5 to 3 hours, turning the shanks gently halfway through, until the meat is tender and falling off the bone.
Once cooked, carefully remove the shanks and set aside. Strain the sauce through a fine sieve into a saucepan, pressing on the vegetables to extract maximum flavor. Bring the sauce to a gentle simmer and cook until glossy and thickened, about 10 minutes.
Taste the sauce and adjust seasoning with salt and pepper. For extra richness, whisk in a small knob of butter if desired. Return the lamb shanks to the sauce to rewarm and coat in the glaze.
Serve the lamb shanks hot, spooning the rich, fragrant sauce over the meat. Garnish with fresh herbs if you like, and enjoy with crusty bread or creamy mashed potatoes.