Start by gathering all your ingredients. Finely chop the onion and coarsely chop the spinach. This will make the cooking process much smoother.
In a skillet, heat a drizzle of olive oil over medium heat. Add the finely chopped onion and sauté until it becomes translucent, about 5-7 minutes. This will bring out the sweetness of the onion.
Add the coarsely chopped spinach to the skillet with the onions. Cook until the spinach is wilted and any excess moisture has evaporated. Season with salt and pepper to taste. Set aside.
In a large pot, melt the butter over medium heat. Once melted, whisk in the flour and cook for about 2 minutes to form a roux. Gradually add the whole milk while continuously whisking to prevent lumps. Cook until the sauce thickens, about 5-10 minutes. Season with salt and pepper.
Once the béchamel sauce is thickened, stir in the basil pesto until well combined. This will add a burst of flavor to your lasagna.
Preheat your oven to 180°C (350°F). In your baking dish, spread a thin layer of the béchamel-pesto sauce on the bottom. Layer with lasagna sheets, followed by half of the sautéed spinach and onion mixture, and a sprinkle of parmesan cheese. Repeat the layers, finishing with a layer of sauce on top. Sprinkle with extra parmesan cheese for a delicious crust.
Cover the baking dish with aluminum foil and bake in the preheated oven for 30 minutes. After 30 minutes, remove the foil and bake for an additional 15-20 minutes or until the top is golden and bubbly.
Once baked, let the lasagna rest for about 10-15 minutes before slicing. This will help the layers hold together when you serve it. Enjoy your delightful Veggie Pesto & Spinach Lasagna!