Peel and dice the potatoes, then boil them in salted water until soft and fluffy, about 15-20 minutes. Drain well and mash with butter, a splash of cream, and season with salt and pepper until smooth.
While the potatoes cook, heat oil in a large skillet over medium heat. Add chopped onions and minced garlic, sauté until fragrant and translucent, about 3-4 minutes.
Add the ground lamb to the skillet, breaking it apart with a spatula. Cook until browned and cooked through, about 8-10 minutes. Season with salt, pepper, and Worcestershire sauce, stirring to combine.
Stir in diced carrots and thawed peas, cook for another 2-3 minutes until vegetables are tender and flavors meld. Pour in the stock and simmer briefly until slightly thickened.
Transfer the meat and vegetable mixture to your baking dish, spreading it evenly with a spatula.
Spoon the mashed potatoes over the filling, starting from the edges and working inward to seal the sides. Use a fork to rough up the surface, creating peaks for extra crispiness.
If using cheese, sprinkle it evenly over the mashed potatoes for a bubbly, golden crust.
Bake in a preheated oven at 200°C (390°F) until the top is golden brown and bubbling, about 25-30 minutes. Check around 20 minutes to prevent over-browning; tent with foil if necessary.
Remove from oven and let rest for about 5 minutes. This helps the filling set and makes serving neater.
Slice and serve your shepherd’s pie hot, enjoying the crispy topping and savory filling.