Spinach Pesto Lasagna with Creamy Mushroom Sauce (Vegan)

There's nothing like the smell of freshly baked lasagna in the oven to make the holiday come alive. So indulge in this easy, delicious, protein-packed, vegan mushroom spinach lasagna.

Course Main Dish
Cuisine Gluten-Free, Italian, Pasta, Vegan
Keyword gluten-free lasagna, mushroom lasagna, vegan lasagna recipe
Prep Time 15 minutes
Cook Time 1 hour
Total Time 1 hour 15 minutes
Servings 9 servings
Calories 253 kcal
Author Anjali Lalani


For the Creamy Mushroom Sauce:

  • 5 cloves garlic , minced
  • 1/4 cup vegan butter
  • 1 medium white onion , finely diced
  • 16 oz. cremini mushrooms , stems removed & thinly sliced
  • 1/4 cup all-purpose flour , or rice flour for gluten-free version
  • 3 cups unsweetened cashew milk , room temperature - see notes below
  • 1/8 teasp salt
  • 1/8 teasp dried oregano
  • 1/8 teasp dried basil
  • 1/8 teasp ground nutmeg

For the Spinach Layer:

  • 2 tbsp extra virgin olive oil
  • 3 cloves garlic , minced
  • 7 cups fresh baby spinach leaves , roughly chopped

For Cashew Cream:

  • 1.5 cups raw cashews , soaked 3-4 hours (see notes below)
  • 1 cup water

For Creamy Pesto:

  • 1/2 cup vegan pesto
  • 1/4 cup cashew cream (prepared from above)


To Prepare Creamy Mushroom Sauce (see step-by-step photographs in post above):

  1. Heat a large non-stick pan on medium heat.

  2. Add the vegan butter and allow it to melt.

  3. Add the minced garlic and diced onions. Saute until the onions start to become translucent.

  4. Add the thinly sliced mushrooms. Saute on medium-high heat until the mushrooms cook completely, and the water released from the mushrooms is mostly evaporated.

  5. Turn the heat to low-medium.

  6. Add the flour. Mix thoroughly with the onion/garlic/mushroom mixture.

  7. Allow the mixture to cook for a few minutes, mixing frequently so that the flour mixture doesn't stick to the pan.

  8. Add only 1 cup of the room temperature unsweetened cashew milk to the pan and mix thoroughly with the flour/mushroom mixture. I like to use a whisk for this step so that the mixture breaks up and blends easily into the non-dairy milk. 

  9. Turn the heat up to medium. Add the salt and remaining non-dairy milk and mix in.

  10. Adjust the heat so that the creamy mushroom sauce maintains a gentle simmer.

  11. Simmer for about 20-30 minutes until the mushroom sauce reduces by 1/3-1/2 in volume and becomes nice and thick. Mix frequently in between to make ensure that the sauce and mushrooms aren't sticking to the bottom of the pan. Continue on to cook the spinach, prepare the creamy pesto sauce, and make the tofu ricotta while you are waiting for the sauce to thicken. 

  12. Once the sauce has thickened (it should still be pour-able), add in the nutmeg, dried basil, and dried oregano. Season to taste with additional salt and freshly ground black pepper. 

  13. Turn the heat off and set aside. The sauce will thicken even more once cooled to room temperature. If you feel like the sauce is too thick while assembling the lasagna, feel free to add a little more non-dairy milk as needed. 

To Prepare the Spinach:

  1. In a large non-stick pot, heat the olive oil on medium heat.

  2. Add the minced garlic and fry for about 30 seconds. 

  3. Add the roughly chopped fresh baby spinach leaves. Mix and allow the spinach to cook until it is all completely reduced and the water released has mostly evaporated. You may think this is a lot of spinach, but it will considerably reduce in volume once cooked. 

To Prepare the Creamy Pesto:

  1. Make the Cashew Cream - Drain and add the soaked cashews to a high speed blender (see notes below), along with 1 cup water. Blend until you get a completely smooth cashew cream with no pieces left. 

  2. Make the Creamy Pesto - Combine the prepared pesto with 1/4 cup prepared cashew cream. Thin out with a tiny amount of water and season with salt if needed. Store the remaining cashew cream in an air-tight container in the fridge. 

To Assemble & Cook the Lasagna (see step-by-step photographs in post above):

  1. Once the creamy mushroom sauce is done, you are ready to assemble the lasagna. 

  2. Turn the oven to 400 degrees (according to uncooked lasagna sheets package).

  3. Lightly grease an 8x8 square glass baking tray with a little olive oil.

  4. Add a generous layer of the creamy mushroom sauce to cover the bottom of the glass tray. 

  5. Place 2 uncooked green lentil lasagna sheets on top of the sauce, side by side, in a single layer.

  6. Spread a layer of the prepared Garlic Basil Vegan Ricotta on top of the lasagna sheets.

  7. Spread 1/2 of the cooked spinach on top of the vegan ricotta layer.

  8. Add a layer of the prepared creamy mushroom sauce on top of the spinach so that it is completely covered.

  9. Drizzle on some prepared creamy pesto sauce. 

  10. Repeat with another layer of the uncooked lasagna sheets, vegan ricotta, the remainder of the cooked spinach, a layer of the creamy mushroom sauce, a drizzle of the creamy pesto, followed by a final layer of uncooked lasagna sheets. (3 layers of uncooked lasagna sheets total)

  11. Top it off with the remainder of the creamy mushroom sauce and a final drizzle of the creamy pesto. You should have used all the creamy mushroom sauce, but will still have a small amount of the prepared pesto left over. 

  12. Cover and seal completely with a sheet of foil.

  13. Bake in the oven (once at temperature) for about 40 minutes.

  14. After the lasagna is done cooking (mine finished in exactly 40 minutes, but you can check by taking a small bite from the side with a spoon to make sure the lasagna sheets are cooked), remove from the oven and take off the foil.

  15. Allow the lasagna to cool for about 10-15 minutes at room temperature (it will continue to cook and all come together during this time).

  16. Garnish with freshly chopped basil, red crushed peppers, and some freshly ground black pepper (optional). Cut and serve hot with a side salad or garlic bread!

Recipe Notes

Minimize Prep and Cook Times - If you are making this lasagna all in one day, I've given tips on how to multi-task to minimize prep and cook times. As indicated in the instructions above, start with the creamy mushroom sauce and prep the spinach, creamy pesto, and tofu ricotta while the sauce is thickening to save time. You can also prepare the different layers the day before to save time.  



Make Ahead Tips - Prepare all the layers of the lasagna ahead of time, and simply assemble prior to baking. Or assemble the lasagna ahead of time and bake when ready to enjoy.



Lasagna Sheets - I used Explore Cuisine Green Lentil no-boil lasagna sheets for this recipe. If you are using cooked lasagna sheets or another type, you may need to adjust the oven temperature and bake time.  



Cashews - If you do not have a high-speed blender, be sure to soak the cashews for 3-4 hours in water before blending.  



Non-Dairy Milk - I personally prefer to use SILK brand unsweetened cashew milk for this recipe because of the flavor. I've used unsweetened almond milk in this recipe and it tastes great as well.  



Alternate Versions -

Nutrition Facts
Spinach Pesto Lasagna with Creamy Mushroom Sauce (Vegan)
Amount Per Serving
Calories 253 Calories from Fat 126
% Daily Value*
Fat 14g22%
Saturated Fat 2g13%
Cholesterol 1mg0%
Sodium 287mg12%
Potassium 438mg13%
Carbohydrates 25g8%
Fiber 1g4%
Sugar 2g2%
Protein 9g18%
Vitamin A 2705IU54%
Vitamin C 8.3mg10%
Calcium 69mg7%
Iron 1.5mg8%
* Percent Daily Values are based on a 2000 calorie diet.