Set the crockpot to high. In the crockpot (or a large pot if using stovetop), melt the butter, then stir in the flour and cook for 1–5 minutes until it forms a light roux.
Add the chopped onion, garlic, Italian seasoning, and chili flakes; stir to combine and cook briefly until fragrant.
Stir in the chopped celery, drained sun-dried tomatoes, and the broth. Season with salt and black pepper to taste.
Cover and cook in the crockpot on low for 4–6 hours or on high for 1–2 hours (stovetop: simmer covered over medium for 15 minutes).
During the final 15–20 minutes of cooking, raise the crockpot to high if not already on high. Stir in the pasta (or pre-cooked pasta), chopped spinach, heavy cream, and milk.
Cook on high until the pasta is tender (about 20 minutes in the crockpot, or about 8 minutes if boiling the pasta separately and then adding it to the soup).
Stir in the shredded provolone and grated Parmesan until melted and incorporated. Thin with additional broth or water if the soup is too thick.
Ladle into bowls and serve warm, optionally topped with fresh thyme.