Melt the butter in a large soup pot over medium heat.
Add onion and sauté for 5-7 minutes, or until soft and translucent.
Add garlic, smoked paprika, garlic powder and cayenne pepper, and cook for an additional 30 seconds, or until fragrant.
Add flour and cook, stirring frequently, for a minute or two, until lightly golden with no raw floury bits remaining.
Stir in vegetable stock and half-and-half, then increase heat to medium-high and bring to a gentle boil.
Reduce heat to medium-low and add broccoli and carrots.
Partially cover and let simmer for 15-20 minutes, stirring occasionally, until broccoli and carrots are tender.
Remove from heat and stir in shredded cheese a handful at a time.
Adjust seasoning to taste.
Serve it up with a big slice of crusty bread for dipping.
