Cook the pasta to al dente in salted water. Note: reserve ½ cup of pasta water for finishing the pasta.
Melt the butter on medium heat and once melted, add the garlic and red pepper flakes and cook until fragrant, ~2 minutes.
Add the artichoke hearts and stir together. Salt & pepper, as desired.
Add the flour and cook for 2-3 minutes. Don't worry if the flour sticks to the bottom because it will release when the milk is added.
Add the milk and Worcestershire sauce and stir until thickened.
Add the cheeses and continue to stir, allowing the cheeses to melt. Add ¼ cup of reserved pasta water. If the sauce looks too thick, add additional pasta water. Note: If you're using frozen spinach add it in this step.
Add the cooked pasta to the artichoke cheese sauce and combine together. Cook together for 3 minutes.
Turn off the heat and add the fresh spinach. Salt the fresh spinach, if desired.
Combine the spinach with the other ingredients.
Serve warm, enjoy and cheers 🥂