01 - Preheat oven to 350°F.
02 - Heat olive oil in a large skillet over medium heat. Add onion and garlic; sauté 3 minutes until translucent.
03 - Add spinach to skillet. Cook fresh spinach until wilted or frozen until heated through. Remove from heat and cool slightly.
04 - Combine ricotta, egg, half the Parmesan, salt, and pepper in a bowl. Fold in the cooled spinach mixture.
05 - In a saucepan, mix crushed tomatoes, tomato paste, oregano, basil, salt, and pepper. Simmer 10 minutes, stirring occasionally.
06 - If using regular noodles, cook according to package instructions. Drain and set aside.
07 - Spread a thin layer of tomato sauce in a 9x13-inch baking dish. Layer noodles, one-third of ricotta-spinach filling, one-third mozzarella, and sauce. Repeat twice, finishing with sauce, remaining mozzarella, and Parmesan.
08 - Cover dish with foil and bake 30 minutes.
09 - Remove foil and bake an additional 20 minutes until golden and bubbly.
10 - Let lasagna rest 10 minutes before slicing and serving.