Peel and chop the potatoes into even chunks, then boil in salted water for 15-20 minutes until tender and fluffy.
While the potatoes cook, heat a tablespoon of oil in your skillet over medium-high heat. Add the ground beef, breaking it apart with your spatula, and cook for 5-7 minutes until browned and juices run clear.
Add the diced onion and minced garlic to the beef, cooking for another 3-4 minutes until fragrant and onions are translucent.
Stir in the diced carrots, then pour in the beef broth and Worcestershire sauce. Let everything simmer for about 8-10 minutes until the mixture thickens slightly and vegetables soften.
Drain the potatoes thoroughly, then return them to the hot pot. Mash with butter and warm milk until smooth and fluffy, seasoning with salt and pepper to taste.
Spread the beef and vegetable filling evenly in your skillet or casserole dish, smoothing the top with your spatula.
Dollop the mashed potatoes over the filling, spreading gently to cover completely. Use a fork to create ridges on top for extra crispiness if desired.
Bake in a preheated oven at 200°C (390°F) for 20-25 minutes until the top is golden brown and bubbling around the edges. During the last 5 minutes, sprinkle cheese on top if using.
Remove from the oven and let rest for 5 minutes before serving. The top should be crispy and the filling hot and flavorful, ready to enjoy.