Generously sprinkle the leg of lamb with salt and pepper.
Heat the oil in a large pot or Dutch oven over a medium-high heat. In two batches, brown the lamb all over and remove to a plate, 4 to 6 minutes per batch.
Add the onions, carrots and garlic. Season with a pinch of salt and pepper, then cook for a minute or two. Add the tomato paste and stir. Deglaze with the red wine and beef stock, scraping the bottom of the pot. Stir in the rosemary, thyme and bay leaves. Return the lamb to the pot and bring to a simmer.
Place the lid on the pot and roast until the meat is very tender, 2 to 2 1/2 hours. Sprinkle over the parsley and serve.