Bring a large pot of salted water to a boil. Cook the penne according to package directions until al dente. Drain and set aside.
Season the chicken with salt, pepper, and Italian seasoning.
Heat the olive oil in a large skillet over medium-high heat. Add the chicken and cook for 5–7 minutes, or until golden and cooked through. Transfer to a plate.
Reduce the heat to medium and melt the butter in the same skillet. Add the garlic and cook for 30–60 seconds, just until fragrant.
Whisk in the flour and cook for 1 minute.
Gradually whisk in the chicken broth, followed by the heavy cream. Simmer for 3–5 minutes, until slightly thickened.
Reduce the heat as needed and stir in the Parmesan until melted and smooth. Season with salt, pepper, and optional red pepper flakes.
Return the chicken to the skillet and stir to coat. Add the cooked penne and toss until everything is evenly covered in sauce.
Stir in spinach or sun-dried tomatoes, if using, and cook for another 1–2 minutes until heated through. Taste, adjust the seasoning, and serve immediately