Step 1: Preheat Oven and Prepare Baking Dish: Preheat oven to 375F (190C). Lightly grease a 9x13 inch baking dish.
Step 2: Cook Pasta: Cook pasta according to package directions until al dente. Drain well and set aside. Undercooking the pasta slightly ensures it will be perfectly cooked after baking in the sauce.
Step 3: Saut Chicken and Vegetables: In a large skillet or Dutch oven, melt 2 tablespoons of butter over medium heat. Add the chopped onion and cook until softened, about 5 minutes. Add the minced garlic and cook for another minute until fragrant. Add the chicken pieces and cook until browned on all sides and cooked through. Remove the chicken and vegetables from the skillet and set aside.
Step 4: Make the Cream Sauce: In the same skillet, melt the remaining 2 tablespoons of butter over medium heat. Whisk in the flour and cook for 1-2 minutes to create a roux. Gradually whisk in the milk and chicken broth, ensuring there are no lumps. Bring the sauce to a simmer, stirring constantly, until it thickens, about 5-7 minutes. Stir in the salt, pepper, and nutmeg (if using).
Step 5: Combine Ingredients: Add the cooked pasta and sauted chicken and vegetables to the cream sauce. Stir to combine, ensuring the pasta and chicken are evenly coated in the sauce. Stir in the cheddar cheese and mozzarella cheese until melted and the sauce is smooth and creamy.
Step 6: Transfer to Baking Dish: Pour the pasta mixture into the prepared baking dish, spreading it out evenly. Sprinkle the grated Parmesan cheese over the top.
Step 7: Bake: Bake in the preheated oven for 20-25 minutes, or until the cheese is melted and bubbly and the top is golden brown.
Step 8: Garnish and Serve: Remove from the oven and let stand for a few minutes before serving. Garnish with chopped fresh parsley before serving.
Optional tips: For a spicier dish, add a pinch of red pepper flakes to the sauce. Broccoli florets, bell peppers, or mushrooms can be added to the chicken and vegetables for extra flavor and nutrients. You can substitute the cheddar and mozzarella cheese with other cheese varieties like provolone or Gruyre.