Sprinkle a chopping board with salt and freshly ground pepper , then roll each lamb shank over the board to cover lightly with seasoning.
In a large ovenproof casserole heat the oil and brown the lamb shanks.
Remove the lamb shanks and keep to one side.
Pour in the red wine, bring to a gentle boil, leave to simmer until reduced by half.
Add the onion, garlic, rosemary and finally the lamb shanks.
Pour in enough beef stock to cover the meat, don't worry if the bones are sticking out, this is fine, and it is also fine if you have stock left over, you may need this to top the shanks up from time to time.
Bring back to a simmer then cover the dish and place in the oven.
Cook for 3 hours, checking from time to time that the meat is still covered in stock and top up as necessary and also occasionally turn the shanks.
Once cooked, remove the shanks and them keep warm.
Place the casserole on the hob and bring to a boil, boil for 5 minutes. Whisk in the cold butter to create a really glossy sauce.