Vegetarian Spinach and Mushroom Lasagna

This vegetarian lasagna recipe is made with meaty shiitake and crimini mushrooms, spinach, and ricotta and mozzarella cheeses. It feeds a crowd and will satisfy both vegetarian and meat-eaters!

Veggie Lasagna
Elise Bauer

Have a large crowd gathering for the holidays? Did you sign up to bring a main dish to a potluck feast? Consider this veggie lasagna. It's hearty, filling, and feeds a multitude.


Watch This Tasty Vegetarian Lasagna Recipe

Vegetarian Lasagna: A Crowd-Pleasing Recipe

Be warned, though. This vegetarian spinach and mushroom lasagna is so good your guests may ask for it again and again—for every potluck, for every holiday feast. They'll get those puppy dog eyes when they look at you and say, "Oh, how about that veggie lasagna, it's so good, and everyone can eat it—could you bring that?"

And you'll be slightly annoyed because, perhaps you were hoping to squeeze by with a simple potato salad, even though you signed up for a main. But then you'll think about how good this lasagna is and how much you want some too, and then it's just an excellent excuse to make it again.

Slice of vegetarian lasagna on a plate
Elise Bauer

Vegetarian Lasagna for All

Now, you may ask, why a vegetarian lasagna? A veggie lasagna can be especially helpful around holiday meals when you are trying to figure out what to serve cousin Judy and uncle Joe who won't eat turkey, goose, roast beef, or whatever the main meat dish is of the meal.

It's doubly helpful the days after the big feast when you still have friends and relatives around who need to be fed, and you don't want to serve leftover turkey for every meal.

This vegetarian lasagna fits that bill, too, in that it is so filled with meaty shiitake and cremini mushrooms, spinach, and ricotta and mozzarella cheeses, your meat-eating guests will be fighting for seconds along with the vegetarians.

Hopefully, they'll remember to leave some for you!

Elise Bauer with Vegetarian Spinach Mushroom Lasagna
Elise Bauer

How To Store and Reheat Leftovers

Lasagna makes great leftovers! You can keep this lasagna in the refrigerator for at least 5 days. Warm up slices in the microwave, or reheat the entire lasagna (covered with foil) in a 350°F oven until the cheese is bubbly.

How To Freeze Vegetarian Lasagna

You can freeze this lasagna baked or unbaked. In either case, line the lasagna pan with foil so that once the lasagna freezes through, you can easily lift it out. That way, you're not keeping the pan in the freezer, too.

Unbaked lasagna: In the foil-lined pan, assemble the lasagna as directed, but don't bake it. Cool, then cover with foil. Once it's frozen solid, lift it out of the pan, wrap with an additional layer of foil, and freeze for up to 1 month.

When you're ready to bake, unwrap it from the foil and put it back in its original pan. Cover the top with foil and defrost in the refrigerator overnight. Bake as directed in Step 6, allowing an additional 10 to 20 minutes.

Baked lasagna: In the foil-lined pan, assemble the lasagna and bake as directed in Step 6. Cool completely, cover with foil, and freeze it until solid. Then lift it out of the pan, wrap it an additional layer of foil, and freeze for up to 1 month.

When you're ready to reheat it, unwrap it and put it back in its original pan. Cover the top with foil (you can reuse the foil use used for wrapping) and defrost in the refrigerator overnight. Reheat covered in foil at 350°F until bubbly again.

Using Fresh Spinach in Lasagna

To substitute fresh spinach for the frozen spinach called for in the ingredients, you'll need 2 to 3 pounds of fresh spinach to produce 3 cups of chopped, cooked spinach.

Soak the fresh spinach leaves in cold water to dislodge any dirt. Remove the from the water and place the wet spinach in a pan, put a lid on, and steam over medium high heat until wilted, about 3 to 4 minutes. You can either chop the spinach before or after you steam it.

5 More Recipes for Lasagna Lovers

From the Editors Of Simply Recipes

Vegetarian Spinach and Mushroom Lasagna

Prep Time 30 mins
Cook Time 105 mins
Total Time 2 hrs 15 mins
Servings 8 to 10 servings

The first thing I do to start making this recipe is to get a big pot of salted water heating for the pasta and defrost the spinach. While this is happening you can prep the mushrooms and cheeses.

Use high quality tomato sauce for best results.

If fresh basil is not available for layering in the casserole, add 2 teaspoons of dried basil to the sauce.


For the sauce:

  • 1 1/2 pounds cremini mushrooms, roughly chopped

  • 1/2 pound shiitake mushrooms, roughly chopped

  • 1/4 teaspoon kosher salt

  • 1 generous cup chopped onions

  • 1/4 cup extra virgin olive oil, plus more for oiling the noodles

  • 4 cloves garlic, chopped (about 4 teaspoons)

  • 1 (6-ounce) can tomato paste

  • 2 cups prepared tomato sauce, divided

  • 1 (28-ounce) can crushed tomatoes

  • 1 cup water

  • 1 tablespoon dried thyme

  • 1/2 teaspoon red pepper flakes

  • 1 tablespoon sugar

For the lasagna:

  • 2 (10-ounce) boxes frozen chopped spinach, thawed and squeezed in clean towel for excess moisture

  • 1 pound lasagna noodles (16 to 20 noodles)

  • 1 (15 or 16-ounce) container ricotta cheese

  • 1/4 cup chopped fresh basil

  • 1/4 pound shredded pecorino or Parmesan cheese (about 1 cup)

  • 1 pound shredded mozzarella cheese (about 4 cups)


  1. Sauté the mushrooms:

    Place mushrooms in a large (6 to 8 quart) sauté pan on high or medium-high heat. Stir them with a wooden spoon or shake the pan from time to time. You may hear them squeak.

    Sprinkle salt over the mushrooms. The mushrooms will sizzle and then start to release water. (Note that you are not adding fat at this point to the pan; this method of cooking mushrooms in their own moisture is called "dry sautéing.)

    Once the mushrooms start to release water into the pan, stir in the chopped onions. Cook until the mushrooms are no longer releasing moisture and the mushroom water has boiled away, about 5 minutes more.

    Sautéing mushrooms for Vegetable Lasagna
    Elise Bauer
    Veggie lasagna Cooking mushrooms on stovetop for Vegetable Lasagna
    Elise Bauer
  2. Make the sauce:

    Add the olive oil to the mushrooms and stir to coat. Sauté the mushrooms and onions for about a minute. Add the garlic and cook for another minute.

    Stir in the tomato paste, cook for a minute longer. Reserve 1 cup of the tomato sauce (it will go in the bottom of the casserole dish), and put the remaining cup of tomato sauce into the pot with the mushrooms. Add the large can of crushed tomatoes and one cup of water.

    Stir in the thyme, sugar, and red pepper flakes. (If you are using dried basil instead of fresh, add it now.) Bring to a simmer, then lower the heat and simmer on a low simmer, for 20 minutes.

    Vegetarian Lasagna recipe Adding onions to mushroom mix for veggie lasagna
    Elise Bauer
    Veggie lasagna - sauce mix for Vegetable Lasagna
    Elise Bauer
  3. Preheat the oven and prep the pan:

    Preheat the oven to 350°F.

    Spread the one cup of reserved tomato sauce over the bottom of a large (preferably 10- x 15-inch) casserole dish. (If your casserole dish is smaller, you may need to add another layer as you go through this step.)

  4. Boil and drain the lasagna noodles:

    Once the sauce is simmering, salt the boiling pasta water, and add the dry lasagna noodles to the boiling water. (The water should be at a vigorous, rolling boil.) Stir gently, making sure that the noodles are not sticking to each other. Set the timer for 8 minutes, or however long is indicated on the package of the noodles. Cook uncovered on a high boil.

    When the noodles are ready (al dente, cooked through but still firm to the bite), drain the noodles in a colander, and rinse them to cool them with cold water. As you rinse them, gently separate them with your fingers so they don't stick to each other.

    Simple Tip!

    Many of our readers have made this lasagna using no-bake noodles and reported success. 

    Vegetarian lasagna Preparing noodles for vegetarian lasagna in a colander
    Elise Bauer

    Prepare a couple large cookie sheets or baking sheets by spreading a tablespoon of olive oil over the baking sheets.

    Place the lasagna noodles on the sheets, gently coating them with a bit of that olive oil, and spreading them out. This will help keep them from sticking to each other while you finish the sauce and prepare the layered casserole.

    Best Vegetarian Lasagna Recipe Laying out noodles for vegetarian mushroom lasagna
    Elise Bauer
  5. Assemble the lasagna:

    Turn off the heat on the stovetop for the sauce.

    Place a layer of lasagna noodles down over the tomato sauce, slightly overlapping. (For our 10x15-inch dish, we ultimately fit 3 layers of 6 noodles each, with 2 extra noodles on which to nosh.)

    Sprinkle half of the ricotta cheese over the noodles, and half of the defrosted, drained, and squeezed out spinach over the ricotta.

    Sprinkle half of the mozzarella cheese over the spinach, and just a quarter of the pecorino cheese.

    Then spoon 1/3 of your mushroom sauce over the mozzarella. Sprinkle half of the fresh basil over the sauce.

    Veggie lasagna Sauce on bottom of pan for vegetarian lasagna
    Elise Bauer
    Vegetarian Zucchini Lasagna Layering vegetable lasagna in pyrex dish
    Elise Bauer
    Vegetarian lasagna recipe adding the cheese and spinach
    Elise Bauer
    Veggie lasagna adding the sauce layer
    Elise Bauer
  6. Repeat the layers:

    Repeat the layering process. Place a second layer of noodles over the sauce. Spread the remaining ricotta, spinach, and mozzarella over the noodles. Sprinkle another quarter of the pecorino along with the mozzarella. Top with another third of the mushroom sauce and the remaining fresh basil.

    Layer your final layer of lasagna noodles over the sauce. Spread the remaining sauce over the lasagna noodles, and sprinkle with the remaining pecorino or parmesan cheese.

    Vegetable lasagna layers seen through pyrex dish
    Elise Bauer
    Vegetarian lasagna ready to bake in oven
    Elise Bauer
  7. Cover with foil and bake:

    Pull out a sheet of aluminum foil large enough to cover the casserole dish. Spread a little olive oil over the inside of the piece of foil (the side that will have contact with the lasagna). Place the foil over the casserole dish and crimp the edges.

    Bake at 350°F for 25 minutes, then remove the foil and bake uncovered for an additional 25 minutes.

    Take the lasagna out of the oven when done and let it rest 10 minutes before cutting to serve. Once made, the lasagna will last a week in the fridge.

Nutrition Facts (per serving)
473 Calories
23g Fat
43g Carbs
30g Protein
Show Full Nutrition Label Hide Full Nutrition Label
Nutrition Facts
Servings: 8 to 10
Amount per serving
Calories 473
% Daily Value*
Total Fat 23g 29%
Saturated Fat 10g 52%
Cholesterol 55mg 18%
Sodium 1022mg 44%
Total Carbohydrate 43g 16%
Dietary Fiber 7g 26%
Total Sugars 13g
Protein 30g
Vitamin C 17mg 85%
Calcium 727mg 56%
Iron 5mg 28%
Potassium 1263mg 27%
*The % Daily Value (DV) tells you how much a nutrient in a food serving contributes to a daily diet. 2,000 calories a day is used for general nutrition advice.
Nutrition information is calculated using an ingredient database and should be considered an estimate. In cases where multiple ingredient alternatives are given, the first listed is calculated for nutrition. Garnishes and optional ingredients are not included.