Prep the pot. Grab a deep skillet or Dutch oven with a lid. Add olive oil or butter over medium heat. Toss in the onion and cook for 2 to 3 minutes until it softens.
Add garlic and cook 30 seconds until fragrant.
Add the chicken and seasoning. Stir in the chicken pieces, Italian seasoning, salt, pepper, and red pepper flakes if using. You don’t need to brown the chicken fully—just warm it through for a minute so the spices bloom.
Dump in the pasta and broth. Add the dry pasta and pour in the chicken broth. Stir to make sure the pasta is submerged and not clumped.
Cover and simmer. Bring to a gentle boil, then reduce to a steady simmer.
Cover and cook for 9 to 11 minutes, stirring once or twice to prevent sticking. Cook until the pasta is al dente and the chicken is cooked through.
Make it creamy. Lower the heat. Stir in the cream, cream cheese, and Parmesan.
Keep stirring until the cream cheese melts and the sauce becomes smooth and glossy.
Wilt the spinach. Add the spinach in batches, stirring until it wilts. The sauce will look loose at first, then thicken as the spinach releases just a bit of liquid and the pasta absorbs the sauce.
Finish and taste. Taste and adjust with salt and pepper. If the sauce tastes heavy, add a small squeeze of lemon to brighten it up.
Serve warm. Let the pot sit off the heat for 2 to 3 minutes to thicken slightly.
Serve with extra Parmesan and cracked pepper.