Melt the butter in a large pot over medium heat. Once it’s melted and feeling productive, toss in the onion. Cook for 3–4 minutes until soft and translucent. Don’t rush this—flavor takes patience.
Add the garlic and stir for about 30 seconds. If it smells amazing, you’re doing it right. If it smells burnt, you went too far. RIP.
Sprinkle in the flour and stir constantly for about 1 minute. This forms a roux (fancy word, simple task). It should look thick and slightly bubbly, not dry or sad.
Slowly pour in the vegetable broth, stirring like your soup’s life depends on it. Lumps are the enemy here. Then add the milk and keep stirring until smooth.
Add the broccoli and bring the soup to a gentle simmer. Cook for 10–15 minutes, until the broccoli is tender but not falling apart like it gave up.
Lower the heat and slowly add the shredded cheddar cheese. Stir gently until it melts into creamy perfection. Do not boil—cheese hates drama.
Season with salt and pepper, taste, and adjust. This is your moment. Add paprika or mustard powder if you’re feeling fancy.