Melt the butter in a large soup pot
Add the onion, garlic, carrots, celery and stir to coat. Season liberally with salt and pepper, stir and saute for 5-8 minutes
Add the flour and stir til fully dissolved into the butter.
Add the stock and milk, stir, bring to a boil, add the potatoes then reduce to medium, cover and cook about 15 minutes til potatoes are soft
Stir in the broccoli and cook uncovered another 8 minutes til broccoli is soft.
Remove from heat, sprinkle in cheeses and stir til fully combined.
Use a hand emulsifier to loosely emulsify the soup. You want it to be somewhat thick and smooth, but also still get chunks of stuff.
Serve garnished with more shredded cheddar and optionally bacon bits.