Grease casserole dish, set aside
Heat 1 tablespoon olive oil on medium heat and add 3 cloves minced garlic and a half onion, diced. Cook about 4 minutes, or until fragrant
Put on a pot of water to boil (big enough to fit your pasta)
Stir 2 tablespoons flour into onion and garlic to coat well, cook for about 1 minute
Add 1 cup chicken broth and 1 cup milk, use a whisk to stir well
Season with salt, pepper, 1/2 teaspoon dried parsley and 1/4 teaspoon red chilli flakes
Leave sauce to thicken, whisking occasionally
Preheat oven to 375 degrees F
Chop up broccoli and slice mushrooms. This is a good time to use the broccoli stem!
When water is boiling, add broccoli and blanch for 3 minutes, remove from water with a ladle and set aside
Don't forget to stir your sauce occasionally!
When water is back up to a boil, add pasta and cook according to directions on the package, less two minutes. You want the pasta al dente.
As your pasta cooks, and your sauce thickens, add 1/4 cup grated parmesan to your sauce and continue stirring. Turn down to medium-low.
Remove pasta from pot when it is al dente and add it directly to your sauce. Do not drain your pasta water
Mix well to coat the pasta and add 1/3 cup pasta water, broccoli, mushrooms and spinach
Add pasta and veggies to your greased casserole dish and top with 3 cups shredded mozzarella cheese
Place dish in oven for about 15-20 minutes, or until cheese is melted and bubbling. You may want to broil for a couple of minutes to get a toasty brown cheese, but keep a close eye so it doesn't burn