Preheat the oven to 375°F. Prepare a 9×13 baking dish by spraying it with cooking spray and set it aside.
Make the sauce in a dutch oven or large pot by first melting the butter over medium heat. Once the butter is melted, whisk in the all-purpose flour, garlic powder, black pepper, and salt. Once it is whisked to together, continue to cook for 1 minute, stirring occasionally.
1/2 cup unsalted butter, 1/4 cup all-purpose flour, 1 tablespoon garlic powder, 1 teaspoon black pepper, 1/2 teaspoon kosher salt
Continuously whisk in the milk to avoid any lumps. Continue with the chicken stock, followed by the heavy cream. The mixture should be smooth.
1 & 1/2 cups whole milk, 1/2 cup unsalted chicken stock, 1/2 cup heavy cream
Add the cubed, softened cream cheese to the pot and stir it in until melted.
8 ounces cream cheese
Lastly, add the parmesan and stir to combine. Take off the heat.
1/2 cup grated parmesan cheese
Stir in the cooked penne pasta and shredded chicken until everything is coated in the cream sauce.
Add half the pasta mixture to the prepared 9×13 baking dish. Top with half of the mozzarella cheese. Add the remaining pasta mixture, followed by the remaining shredded mozzarella cheese.
3 cups shredded mozzarella cheese
Place the dish in the oven and bake uncovered for 20 minutes until bubbly. Turn the broiler on high and broil until golden brown, keep an eye on it the whole time, so it doesn’t burn. Serve immediately with chopped parsley garnish if desired.
fresh chopped parsley
Notes
This makes a large batch, but you can easily double it to feed more or halve the recipe as needed. If halving the recipe, add it to a 9×9 baking dish, cook time may vary.
Tons of custom options, see my tips above on that.
Store-bought rotisserie chicken can be used in place of making chicken at home.
Lots of customizable options above, including swapping out cheeses, pasta, and proteins.
Add fresh herbs of your choice.
This reheats and freezes well, see my tips above on how to store.