Heat a Dutch oven or large pot over medium heat. Add the olive oil and heat through, then add the butter and allow to melt. Add the onion and sauté until tender, about 6 minutes. Add the garlic and continue to cook until just fragrant, about an additional 30 seconds.
Stir in the flour and cook until it turns a pale golden brown, about 1 minute. Add the vegetable broth and bring to a simmer.
Add the broccoli and carrots and simmer the soup until the broccoli is tender, about 20 minutes.
Season to taste with salt and pepper and add the cayenne. Use an immersion blender or add to a blender. Blend the soup until it’s mostly smooth but some pieces of broccoli remain.
Stir in the cream then slowly add the cheese, stirring constantly until completely combined into the soup.
Serve in warmed soup bowls and garnish with chives and additional Cheddar cheese.