01 - Preheat the oven to 375°F.
02 - Heat olive oil in a large Dutch oven over medium-high heat. Brown the lamb on all sides in batches; set aside.
03 - In the same pot, add onion, carrots, and celery. Sauté until softened, about 5 minutes. Add garlic and cook 1 minute more.
04 - Stir in tomato paste and cook for 2 minutes. Deglaze with red wine, scraping up brown bits. Simmer until reduced by half, 3–4 minutes.
05 - Return lamb to the pot. Add stock, thyme, bay leaf, salt, and pepper. Bring to a boil, then lower heat and cover. Simmer gently for 1 hour, stirring occasionally.
06 - Remove bay leaf. Stir in peas, parsnips or turnips, mushrooms, and Worcestershire sauce. Simmer uncovered for 10–15 minutes, or until vegetables are tender and sauce is thickened. Adjust seasoning.
07 - Boil potatoes in salted water until fork-tender, about 15–20 minutes. Drain well.
08 - Mash potatoes with butter, warmed milk, salt, and white pepper until smooth. Stir in Parmesan if using.
09 - Spoon lamb and vegetable mixture into a 9x13-inch baking dish. Spread mashed potatoes evenly over the top, using a fork to create peaks.
10 - Bake for 30–35 minutes, or until filling is bubbling and potatoes are golden. For extra browning, broil for 2–3 minutes at the end.
11 - Let rest 10 minutes before serving.