Preheat your oven to a toasty 450 degrees and make sure the oven rack is in the middle position. Get a large pot and bring 4 quarts of water to a boil. Add your pasta and a tablespoon of salt, then cook it until it's almost al dente. Drain the pasta and set it aside.
Now, give the pot a good dry or use a skillet while pasta is cooking, melt some butter over medium/low heat. Toss in the onion, and cook until the onion is nice and soft, about 5 minutes. Stir in the garlic and let it get all fragrant for about 30 seconds. Sprinkle in the flour and let it cook for a minute, stirring continuously with a wooden spoon.
Slowly whisk in the broth, heavy whipping cream and sour cream until it's all smooth and then bring it to a gentle simmer. Stir in the artichokes and spinach and let them heat through for about 1-2 minutes.
Next, stir in 1½ cups of mozzarella and ½ cup of Parmesan until it's all nice and melty. Take it off the heat, and season with salt and pepper to taste.
Fold in the pasta and chicken, breaking up any clumps of pasta. Pour everything into a 13 by 9-inch baking dish and sprinkle with the remaining 1 cup of mozzarella and remaining ½ cup of Parmesan. Pop it in the oven and bake it until it's all bubbly around the edges and the cheese is a little brown and spotty, about 12 to 15 minutes (15-20 minutes if you live at high altitude, like we do!). If you like, broil on high for 1-2 minutes until golden color on top. Let it cool for 5-10 minutes, garnish with chopped parsley and dig in! Enjoy!
Notes
Swap the protein: Use leftover roasted turkey, ground beef, or Italian sausage instead of chicken.
Add extra veggies: Toss in some mushrooms, zucchini, or bell peppers.
Use marinara sauce if you prefer it over a cream sauce.
Salt the water for cooking pasta.
Move the rack to the middle before turning on the oven to prevent the top from browning too quickly.