Make the Lentil Filling. Heat the olive oil in an ovenproof 12-inch skillet over medium to medium-high heat until hot. If you don’t have an ovenproof skillet, you’ll need to transfer the cooked lentil filling to a baking dish when it’s time to bake.
Add the onions with a couple pinches of salt and sauté for 8-10 minutes, or until most of the onions are browned. Stir occasionally to prevent burning, but not too often so that they can brown. Add the garlic, thyme and rosemary and cook for 2 minutes, stirring frequently to prevent burning.
Push the onions to the edges of the pan so there’s an empty space in the middle of the pan. Add the tomato paste into the empty space and stir for 2-3 minutes, or until it darkens in color. Reduce the heat to medium, as needed.
Pour in the red wine and deglaze the pan, stirring up any browned bits, until the liquid has mostly evaporated and the smell of alcohol has dissipated, about 3-4 minutes.
Add the vegetable broth, along with the lentils, bay leaves, and paprika. Stir to combine and increase the heat to bring to a boil. Once boiling, reduce heat to maintain a rapid simmer, and simmer until the lentils are just tender and most of the liquid has been absorbed, 25-30 minutes.
Turn the heat to low. Add the tahini, tamari, balsamic vinegar, and vegan Worcestershire sauce (if using). Stir until well incorporated. Taste for seasonings, adding a generous amount of salt (I used about 1 teaspoon kosher salt) and black pepper. Set aside.
Make the Mashed Potato Topping. Peel the Russet potatoes and then rinse them under cold water. Chop the potatoes into eighths.
Place the potatoes and cauliflower florets in a large saucepan or Dutch oven and add just enough water to cover. Add 1 1/2 teaspoons kosher salt and stir to combine. Place the rosemary sprig on top. Bring to a boil and cook until both potatoes and cauliflower are fork-tender and are very soft when poked, about 15 minutes.
Thoroughly drain the potatoes and cauliflower in a colander and discard the rosemary sprig. For the potatoes, pat them dry with paper towels or a clean dish towel. For the cauliflower, you’ll need to squeeze out the excess water or it’ll be very watery.NOTE: See the “tips” section in the post for details on how to squeeze out the excess water.
Return the vegetables to the saucepan or transfer them to a large bowl. Add in the softened vegan butter, lite coconut milk, nutritional yeast, along with salt and black pepper to taste. You can mash everything together using a handheld potato masher, but I use an immersion blender. Taste for seasonings, adding more salt as needed (I used about 1 teaspoon kosher salt).
Assemble the Shepherd’s Pie. Preheat the oven to 375°F/190°C. If your skillet is ovenproof and has enough space, leave the Lentil Filling in there. If not, transfer it to a large (3 quart/3 liter) baking dish. Smooth the Lentil Filling out. Then, spoon and carefully spread out the Mashed Potato Topping on top, covering the whole surface. For more flavor, drizzle the top with extra virgin olive oil and some extra pinches of salt, pepper, and fresh thyme leaves.
Bake for 20 minutes, or until the lentil filling starts to bubble up. Remove from the oven and turn on your oven’s broiler. Place the pan under the broiler for a few minutes until the crust is golden brown. To finish, drizzle with more olive oil and garnish with fresh parsley, if desired.
Store any leftovers in an airtight container in the fridge for up to 4 days.