Heat a large pot with olive oil. Add garlic and onion, sauté for a few minutes until translucent and fragrant. Add mushrooms and cook on medium high heat until they no longer release any liquid and the mushroom water has evaporated (~ 5 minutes). Season with a good pinch of salt and pepper.
Add carrots, zucchini, and chili pepper (optional) and sauté for another 3 minutes.
Stir in canned tomatoes, red wine (optional), bay leaves, and fresh basil. Let it simmer for 20 minutes, stirring occasionally. Season to taste with salt and black pepper.
Dairy-Free Bechamel Sauce
Melt the dairy-free butter in a medium pot over medium heat. Add flour and stir constantly for 1 minute. Pour in soy milk and bring to a boil while whisking constantly. Reduce heat and let it simmer for approximately 10 minutes until thickened. Season with salt, pepper, and nutmeg.
Layer Lasagna
Preheat oven to 390°F (200°C).
Spread a thin layer of béchamel sauce in a baking dish (at least 11x7 inches or a little larger), followed by 3 sheets lasagna noodles. Spread about ⅓ of the tomato sauce on top, followed by a layer of béchamel, and ⅓ of parmesan cheese. Repeat layering two more times (pasta, tomato sauce, béchamel sauce, parmesan cheese).
Bake in preheated oven for 30 minutes. Allow to sit for 5-10 minutes before cutting & serving.
Notes
Keeps fresh for 3-4 days. Store it in an airtight container, or simply wrap the cold baking dish with plastic wrap (easiest to reheat), in the refrigerator.
Reheat for 20 minutes in the preheated oven (395°F/200°C).
Vegan Lasagna:Use dairy-free cheese or simply leave out the cheese altogether to make it vegan. The béchamel sauce and all the other ingredients, except for the parmesan cheese, are 100% dairy-free and vegan! → Make sure to use egg-free lasagna sheets!
Gluten-Free: Go for gluten-free lasagna sheets and use gluten-free flour to make the bechamel sauce.
Red wine and chili peppers are optional to use, but make for a beautiful flavor!