Preheat the oven to 375 degrees. Spray a 9x13 baking dish with cooking spray.
Heat a large skillet over medium high heat. Add the ground lamb, carrots and onions.
Cook, crumbling up the lamb for 5-7 minutes or until no longer pink and the onions and carrots have softened.
Add in the peas and butter and stir until combined.
Sprinkle the flour on top and mix in until everything has a slightly sticky texture.
Pour in the Worcestershire sauce, red wine and chicken stock and bring to a simmer. Stir frequently until the mixture reduces by half.
Season with thyme, salt and pepper.
Transfer the mixture to the prepared baking dish.
For the Potatoes:
Bring the water, salt and potatoes to a boil in a large pot. Cook for 10-15 minutes or until potatoes are fork tender.
Drain potatoes and return to the pot.
Add milk and butter and mash potatoes until smooth. Taste, adding salt and pepper if necessary.
For Assembly and Baking:
Spread the mashed potatoes on top of the lamb mixture.
Optionally, brush the potatoes with the beaten egg and sprinkle the Parmesan cheese on top.
Bake for 20-25 minutes or until the potatoes are lightly golden.
Substitutions: a bag of frozen peas, carrots and onions can be used instead. Homemade mashed potatoes can be replaced with refrigerated ones. Wine can be replaced with additional stock. Make Ahead: meat mixture can be prepared and refrigerated for 3 days. Or the entire dish can be prepared, assembled and refrigerated for 1 day. Freezing and Heating: let casserole cool completely and freeze. Will keep for 3 months. Cook for 1 hour to 1 hour and 15 minutes. Tips: if the meat mixture is soupy, continue to reduce until it has thickened. Top stop your mashed potatoes from sinking into the dish, let the potatoes and meat mixture cool for 15 minutes each before assembling.