Melt butter in a large pot or dutch oven over medium heat. Add onion and celery and sauté until soft. Add garlic and cook a minute more, then stir in carrots, lentils, pepper and water. (Salt is intentionally left out at this point, it prevents legumes from softening.)
Cover and bring to a boil, then reduce heat to low and cook, mostly covered, until very tender, about 35 minutes. Stir in cream and milk, then season with salt and stir in parsley. Add a splash of water if the mixture is dry - you want it quite saucy.
Cook the potatoes in salted, boiling water until tender, then mash with milk and 3 tbsp butter. Season to taste with salt and pepper.
Spread lentils into a 2-litre (2-quart) casserole dish. Spread the mashed potatoes on top. Dot with last bit of butter, then bake at 375 until golden on top, about 20 minutes. Sprinkle with more parsley, if desired.
Notes
Flavor Boosters: add a little splash of umami-packed worcestershire sauce or tamari/soy sauce in the lentil filling instead of more salt if you find it needs more seasoning at the end.Vegan Shepherd's Pie: To make this a vegan lentil shepherd's pie, simply substitute the butter and cream in the recipe for vegan alternatives such as vegan butter and barista oat milk (which is creamier than regular oat milk). This recipe is already vegetarian, so it's an easy switch to make it dairy-free, and it will still taste just as hearty and delicious.