Preheat the oven to 425° and line a baking sheet with parchment.
In a large bowl, toss the broccoli with the olive oil and season with salt and pepper. Roast for 25-30 minutes, or until very tender. Remove from the oven and set aside.
While the broccoli is roasting, put the chopped bacon into a large pot on medium heat. Cook it till crispy-chewy, stirring often. When it's cooked, remove the bacon with a slotted spoon, to a paper towel lined plate. Reduce the heat to low.
Using a large spoon, remove most of the bacon grease from the pot to a can. Leave about 2 Tbsp of the bacon fat in the pot to cook the onions and garlic in.
Add the onions and garlic to the pot, and cook until tender - about 2-3 minutes.
Add the cubed potatoes, the chicken broth, and a little salt (if needed). Bring it to a boil, then reduce heat to medium-low and cook the potatoes until tender.
Add the roasted broccoli to the pot. Roughly purée the soup with an immersion or regular blender, leaving some small chunks for texture.
Stir in the cream, then salt and pepper to taste.
If the soup is too thick for your liking, thin it out further with a little more cream or more chicken broth.
Serve with grated cheddar, the reserved bacon, and a dollop of sour cream!