In a large pot, melt butter over medium heat.
Add onion and garlic; sauté 3–4 minutes until softened.
Add cauliflower florets and chicken broth. Bring to a simmer.
Cook 12–15 minutes until cauliflower is very tender.
Blend half the soup using an immersion blender to thicken, leaving some chunks.
Stir in heavy cream, cheddar cheese, salt, and pepper until melted and smooth.
Add crumbled bacon and simmer 3–4 more minutes.
Serve topped with extra cheddar, bacon, green onions, and optional sour cream.