Preheat the oven to 400°F. Place the cubed potatoes in a large pot, cover with water, and add a pinch of salt. Boil until the potatoes are fork-tender, about 15 minutes, then drain.
Return the drained potatoes to the pot. Add the butter and milk, then mash until smooth. Season with salt and pepper to taste and set aside.
While the potatoes cook, heat a large skillet over medium heat. Add the ground lamb and cook, breaking it up with a spoon, until browned. Drain excess fat if needed.
Add the onion, carrots, parsnips, and garlic to the skillet. Cook for 5 to 7 minutes until the vegetables begin to soften.
Stir in the tomato paste and rosemary. Cook for 1 minute, then pour in the beef broth. Simmer for 8 to 10 minutes until the liquid reduces slightly and the vegetables are tender. Season with salt and pepper.
Spread the lamb and root vegetable mixture evenly in a baking dish. Spoon the mashed potatoes over the top and smooth with a spatula. Bake for 20 minutes until the topping is lightly golden.