In a large skillet, melt butter with olive oil over medium heat. Add 1 chopped onion and saute 5-8 minutes, until the onions are soft and translucent.
While it's sautéing, add 2 teaspoons dried basil, 1 and 1/2 teaspoons kosher salt, and 1/2 teaspoon pepper.
Add 4-5 cloves of chopped garlic and saute one more minute.
In increments, sprinkle 6 tablespoons of flour over the onion mixture, stirring well after each addition to make sure the flour is incorporated.
In a large glass measuring cup, add 1/3 milk, 1/3 cup Greek yogurt, and 1 and 2/3 cup chicken broth. (I used 1 and 2/3 cup water and 2 teaspoons of Better Than Bouillon Chicken Base.) Stir to combine.
Gradually add the liquid to the pan, whisking constantly. Go as slow as you need to make sure the liquid gets absorbed. You want to whisk out any chunks.
Cook over medium heat, stirring until the mixture is thickened slightly, just a couple minutes.
Add the chicken to the white sauce and turn off the heat.
In a medium bowl, stir together 15 ounces of ricotta, 1/3 cup pesto, and 1 egg.
To assemble: wet the bottom of a 2 quart casserole dish with about 1/2 cup of the white sauce. Just enough so the noodles don't stick.
Layer 3 no-boil lasagna noodles on top. Spread with 1/3 of the ricotta mixture. Top with about 1/2 cup of fresh spinach. Add 1/3 of the white sauce and spread to the edges. Top with 1/3 of the mozzarella cheese.
Repeat the layers two more times. 1) Noodles, 2) ricotta, 3) spinach, 4)white sauce, 5) cheese.
Sprinkle the top with 1/4 cup Parmesan cheese.
Spray a sheet of foil with nonstick spray and cover the lasagna.
Bake at 350 for about 50 minutes, or until cooked and tender.
Remove the foil and turn up the oven temperature to broil. Broil until golden brown and bubbly, 1 to 3 minutes. Keep an eye on it!
Let stand for 10 minutes before serving. I like to serve this with some bread, a big salad, and maybe some other green vegetable.