Melt butter in a large pot over medium heat. Add diced onion and cook for 3-4 minutes until soft. Stir in garlic and cook for 30 seconds
Whisk in the flour and cook for 1 minute to remove the raw flour taste.
Slowly whisk in the half-and-half and broth. Stir constantly to avoid lumps. Bring to a gentle simmer.
Stir in chopped broccoli, shredded carrot, paprika, and mustard powder. Simmer uncovered for 15 minutes until the broccoli is tender.
Reduce heat to low and stir in cheddar and Parmesan, one handful at a time, until melted and smooth. Season with salt and pepper to taste.
For a smoother soup, blend half using an immersion blender or regular blender. Leave chunky if preferred.
Ladle into bowls and serve with crusty bread or a bread bowl.
Notes
📦 Storage & Reheating
🧊 Fridge: Store in an airtight container for up to 4 days. ❄️ Freezer: Freeze for up to 3 months (leave out cheese before freezing, then add after reheating). 🔥 Reheat: Warm on the stovetop over low heat, stirring frequently. If too thick, add a splash of broth or milk.
💡 Tips & Variations
✔️ Make it vegetarian – Use vegetable broth instead of chicken broth. ✔️ Spice it up – Add a pinch of cayenne or red pepper flakes. ✔️ Extra creamy – Swap half the broth for heavy cream. ✔️ Lower the carbs – Reduce the flour or use xanthan gum as a thickener.💡 Pro Tip: For the smoothest, creamiest soup, use freshly shredded cheese instead of pre-shredded!