Step 1: Preheat Oven and Prepare Baking Dish: Preheat oven to 375F (190C). Grease a 9x13 inch baking dish.
Step 2: Cook Pasta: Cook pasta according to package directions until al dente. Drain and set aside. Undercooking the pasta slightly is recommended, as it will continue to cook in the oven.
Step 3: Saut Chicken and Vegetables: In a large skillet or pot, melt butter over medium heat. Add chopped onion and cook until softened, about 5 minutes. Add minced garlic and cook for another minute until fragrant.
Step 4: Make the Cream Sauce: Stir in flour and cook for 1-2 minutes, stirring constantly, to create a roux. Gradually whisk in milk until smooth. Bring to a simmer, stirring constantly, until the sauce thickens, about 5-7 minutes.
Step 5: Season the Sauce: Remove from heat and stir in salt, pepper, and nutmeg (if using). Add 1 1/2 cups of cheddar cheese and 1/2 cup of mozzarella cheese to the sauce, stirring until melted and smooth.
Step 6: Combine Ingredients: Add cooked pasta and chicken to the cheese sauce and stir until everything is well combined.
Step 7: Transfer to Baking Dish: Pour the pasta mixture into the prepared baking dish, spreading it evenly.
Step 8: Top with Cheese: Sprinkle the remaining cheddar cheese, mozzarella cheese, and Parmesan cheese evenly over the top of the pasta bake.
Step 9: 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 10: Garnish and Serve: Remove from oven and let stand for 5-10 minutes before serving. Garnish with fresh parsley (if using).
Optional tips: For a creamier sauce, use heavy cream instead of milk. You can also add vegetables like broccoli, peas, or carrots to the pasta mixture. For a spicier kick, add a pinch of red pepper flakes to the sauce. Different types of cheese can be used, such as Gruyere, Monterey Jack, or Pepper Jack.