Geoffrey Zakarian ate this dish often as a kid, but he didn’t know it as shepherd’s pie, just as a tasty use of leftovers. “My mom, Viola, served it whenever there was extra meat,” he says. “It’s the best comfort food.” The recipe is easy to adjust based on what you have: You can substitute ground beef or turkey for the lamb or swap the potato for cauliflower or turnip purée.
For the potatoes: Peel and cube the potatoes into a 1-inch dice. Put in a large pot and add enough cold water to cover the potatoes by 1 inch. Season the water with salt and bring to a boil. Boil the potatoes until tender, about 10 minutes. Drain the potatoes and pass through a ricer. Add the milk, sour cream, melted butter and egg yolks to the potatoes and stir with a wooden spoon until smooth. Season with salt and pepper and reserve.
For the filling: Preheat the oven to 375˚ F. In a medium sauté pan over medium heat, melt the butter with the olive oil. Add the pearl onions and cook, shaking the pan occasionally so the onions brown on all sides, until caramelized, about 5 minutes. Set aside.
In a large shallow ovenproof braising pan, heat the canola oil over medium-high heat. Add the diced onions and rosemary and cook, stirring often, until the onions are slightly browned and soft, 3 to 5 minutes. Add the lamb and season with salt and pepper. Cook, stirring, until the lamb is cooked through, 4 to 6 minutes. Add the tomato paste, flour and sherry vinegar and cook for 2 more minutes. Add the chicken stock, peas and carrots and pearl onions and bring to a boil. Spoon off any excess fat. Season with salt and pepper and stir in the parsley.
Top the lamb mixture with an even layer of the potatoes. For the topping: Drizzle the potatoes with the melted butter and sprinkle with the Parmesan. Transfer to the oven and bake until the potatoes are lightly browned, about 40 minutes. Garnish with additional parsley.