Preheat your oven to 350°F (175°C) and gather all the ingredients.
In a large pot of boiling, lightly salted water, cook the lasagna noodles until al dente, approximately 8–10 minutes. Drain, then rinse with cold water to prevent sticking.
While the noodles are cooking, melt the butter in a large saucepan over medium heat. Sauté the onion and garlic until the onion is tender and fragrant. Whisk in the flour, cooking for about 2 minutes until lightly golden.
Gradually add the chicken broth and milk to the saucepan, whisking continuously until smooth. Stir in 2 cups of mozzarella and ¼ cup of Parmesan cheese. Season the mixture with salt, basil, oregano, and black pepper. Once the sauce is creamy and well combined, remove from heat and set aside.
Spread one-third of the prepared sauce over the bottom of a 9x13-inch baking dish. Place three lasagna noodles over the sauce, followed by an even layer of ricotta cheese and cubed chicken.
Arrange three more lasagna noodles on top, spreading another one-third of the sauce mixture over them. Layer with thawed spinach, 2 cups of mozzarella, and ½ cup of Parmesan cheese.
Lay the remaining lasagna noodles over the top layer and cover with the remaining sauce. Sprinkle with the remaining ¼ cup of Parmesan and the chopped parsley.
Cover the baking dish loosely with aluminum foil and bake in the preheated oven for 35–40 minutes, or until bubbly and heated through.
Allow the lasagna to rest for a few minutes before slicing. Serve and enjoy!