Preheat the oven to 150C/300F/Gas 2. Heat the vegetable oil in a casserole and fry the lamb shanks, one at a time, for 2-3 minutes, turning regularly, until browned all over. Remove from the dish and repeat with the remaining lamb shanks.
Add the vegetables to the casserole and fry for 2-3 minutes. Add the bay leaf, thyme and rosemary. Return the lamb shanks to the casserole and pour over the wine, port and stock.
Cover the casserole with a lid and cook in the oven for 2½-3 hours, or until the lamb shanks are very tender.
To serve, remove the lamb shanks from the casserole and place onto serving plates. Strain the liquid from the casserole into a jug and serve it alongside.