Soups & Stews
This best broccoli cheddar soup recipe with milk delivers the creamiest, most comforting bowl of soup you'll ever make—rich, velvety, and packed with cheesy goodness. The secret lies in blending the broth for that signature smooth texture while keeping the broccoli vibrant and the cheese perfectly melted.
I've perfected this vegetarian-friendly version over years of testing, ensuring every spoonful is balanced between creamy and fresh.
What sets this recipe apart is the combination of milk and cheddar, creating a sauce that's luxuriously thick yet never heavy. We start by sautéing onions and garlic to build a flavorful base, then simmer everything until the broccoli is tender before blending for that restaurant-quality smoothness.
The result? A soup so rich it feels indulgent, yet light enough for any meal.
This soup is designed to be foolproof—no lumps, no bitterness, just pure comfort in a bowl. The milk adds a subtle sweetness that rounds out the sharpness of the cheddar, while the broccoli keeps it bright and fresh.
It's the kind of dish that warms you from the inside out, perfect for chilly days or when you need a little extra coziness.
Serve it topped with extra cheese, crispy bread, or fresh herbs for that final touch of elegance. The best part? It's ready in under an hour, making it ideal for weeknight dinners or meal prep. Here's how to make it perfectly every time.
Ingredients for best broccoli cheddar soup recipe with milk
Here's what you need to make the creamiest broccoli cheddar soup with milk—comfort in a bowl.
| Ingredient | Amount | Notes |
|---|---|---|
| Broccoli Florets 🥦 | 4 cups | Fresh, medium-sized florets |
| Yellow Onion 🧅 | 1 whole | Medium, finely chopped |
| Garlic Cloves 🧄 | 3 cloves | Fresh, minced |
| Vegetable Broth 💧 | 4 cups | Low-sodium preferred |
| Whole Milk 🥛 | 1 cup | Full-fat for creaminess |
| Heavy Cream 🥛 | ½ cup | Full-fat for richness |
| Sharp Cheddar Cheese 🧀 | 2 cups | Freshly grated, block preferred |
| All-Purpose Flour 🌾 | 2 tbsp | For thickening |
| Butter 🧈 | 2 tbsp | Unsalted, for sautéing |
| Salt 🧂 | 1 tsp | Kosher or sea salt |
| Black Pepper 🌶️ | ½ tsp | Freshly ground |
| Dried Thyme 🌿 | ½ tsp | Or 1 tsp fresh thyme |
| Lemon Juice 🍋 | 1 tbsp | Freshly squeezed |
| Bread Crumbs 🍞 | ¼ cup | Panko for topping |
The cheddar makes this soup sing, so grab a block and grate it yourself—pre-shredded gets clumpy. I always use sharp cheddar from the deli section at Whole Foods or Trader Joe's for that perfect tang. The milk and cream combo is what gives this soup its signature velvety texture, so don't skimp on the full-fat versions. For the broth, low-sodium vegetable broth keeps the flavor balanced without adding extra salt. Fresh broccoli is ideal, but frozen works in a pinch—just thaw it first.
No heavy cream? Half-and-half or coconut milk still gives you creaminess, though the texture will be slightly lighter. Pre-shredded cheese? Grating your own is worth the extra minute—it melts so much better. The flour is just for thickening, so if you're gluten-free, you can use cornstarch instead. For extra depth, add a pinch of nutmeg or a dash of hot sauce if you like it spicy. The lemon juice brightens everything up, so don't skip it—it's what keeps the soup from tasting too heavy.
This soup tastes even better the next day, so make a big batch. It keeps for 4-5 days in the fridge and freezes beautifully for up to 3 months. For serving, I always top it with extra cheese and toasted bread crumbs—crispy on top, creamy underneath. If you're prepping ahead, store the soup without the toppings and add them fresh when reheating. Leftovers? Just reheat with a splash of milk or broth to restore that silky texture.
Why You'll Love This Recipe
- No-Fuss Ingredients: I swear by this recipe because it uses what’s already in my pantry. Onion, garlic, and a head of broccoli—plus broth and milk—mean no last-minute grocery runs. Honestly, I’ve made it three times in a row using the same staples, and it never lets me down.
- Creamy Without the Heavy: That whole milk makes all the difference—rich but not cloying, with a velvety finish that’s actually satisfying. I’ll be real: my first attempt with half-and-half was a flop, but the milk? Spot-on. The cheddar melts just enough to coat every spoonful without turning it into a blob.
- Weeknight to Potluck: This soup works for lazy Tuesday dinners or Sunday gatherings. Double the batch, and I’ve got leftovers for lunch—still delicious reheated, even if the broccoli gets a tad softer. My roommate’s a skeptic, but she always asks for seconds when I bring it to game day.
- Budget Meal, Big Payoff: A single head of broccoli and a block of cheddar stretch across multiple meals. I’ve fed four people for under $10 with this, and the milk adds that restaurant-quality touch without breaking the bank. Not the prettiest, but the taste makes up for it every time.
Step-by-step instructions for broccoli cheddar soup with creamy milk base
Here's how to create the richest, smoothest broccoli cheddar soup you've ever tasted—every step ensures that velvety texture and bold cheddar flavor.
Sauté the Aromatic Base
Melt the 2 tablespoons butter in a large pot over medium heat. Add the 1 whole yellow onion and cook for 5 minutes, stirring occasionally, until it becomes translucent and slightly caramelized. This step builds the foundation of flavor—don't rush it.
Add the 3 cloves minced garlic and the 0.5 teaspoon dried thyme, stirring for 30 seconds until fragrant. You'll know it's ready when the kitchen fills with that warm, earthy garlic aroma. This is where the magic starts—these aromatics infuse the entire soup with depth.
Cook the Broccoli Until Tender
Add the 4 cups broccoli florets to the pot and stir to coat them in the butter and aromatics. Cook for 5-6 minutes, stirring occasionally, until the broccoli softens slightly but still retains some bite. Overcooking here will make the soup mushy when blended later.
Pour in the 4 cups vegetable broth and bring the mixture to a gentle boil. Reduce heat to medium-low and let it simmer for 8-10 minutes until the broccoli is fork-tender. You'll see the florets break down slightly, releasing their vibrant green color and nutty flavor into the broth.
Thicken and Blend for Silky Smoothness
Sprinkle the 2 tablespoons all-purpose flour over the simmering soup and stir vigorously for 1-2 minutes to cook out the raw flour taste. This creates a natural roux that will thicken the soup beautifully without any lumps.
Reduce heat to low and let the soup simmer for another 5 minutes, stirring occasionally. Then, carefully transfer half of the soup to a blender (work in batches to avoid overflow). Blend until completely smooth, then return it to the pot. The result should be a velvety, creamy base that coats the back of a spoon.
Add Dairy and Cheese for Richness
Stir in the 1 cup whole milk and 0.5 cup heavy cream, letting the soup warm through over low heat for 3-4 minutes. This step transforms the soup from simple to luxurious—those dairy fats create that signature velvety texture we all love.
Gradually add the 2 cups freshly grated sharp cheddar cheese, stirring constantly until fully melted and smooth. The cheese should disappear completely, creating a thick, rich consistency. If the soup looks too thick, thin it with a splash of warm broth. Taste and adjust seasoning with 1 teaspoon salt and 0.5 teaspoon black pepper—this is where you balance all those rich flavors.
Finish with Lemon and Serve with Crispy Topping
Stir in the 1 tablespoon lemon juice just before serving—this brightens the rich cheese flavors and cuts through the creaminess beautifully. The acidity makes each spoonful taste fresh and vibrant.
For serving, ladle the soup into bowls and top each with 0.25 cup bread crumbs. Broil in the oven for 2-3 minutes until golden brown and crispy. This adds a delightful textural contrast to the creamy soup below—crunchy on top, silky underneath.
Pro Tips For Making Best Broccoli Cheddar Soup Recipe With Milk
- SIMMER LOW AND SLOW: Once the broth and broccoli hit a boil, drop the heat to a bare simmer—think tiny bubbles, not rolling. I used to rush this, and the soup would turn grainy or split when I added milk later. A steady 15-20 minutes at low heat breaks down the broccoli just enough for creamy texture without mush.
- CHOP ONION SMALLER THAN YOU THINK: Tiny diced onions cook faster and disappear into the soup without leaving chunks. I learned this the hard way when I used standard dice—now I slice them into 1/8-inch pieces so they melt into the broth instead of sitting there like little surprises.
- STRAIN THE MILK FIRST: Whole milk can curdle when added to hot soup, and nobody wants that. Heat the milk separately in a separate pot until warm (not boiling), then whisk it into the soup off the heat. This keeps the soup silky instead of lumpy—trust me, your taste buds will notice.
- SAVE THE STALKS FOR STOCK: Don’t toss those broccoli stalks! Roughly chop them and add them to the broth at the start—they’ll soften and infuse flavor without overpowering. It’s an easy way to sneak in extra veggies and depth without extra effort. (Yes, even if you’re impatient like me.)
Pro cooking tips for this dish
Blending for Perfection
For that signature velvety texture, blend only half the soup at a time using an immersion blender or countertop model. I use a Ninja BN601 because it handles thick soups beautifully.
Blend until completely smooth—no chunks should remain. Returning blended soup to the pot prevents temperature drops that can cause cheese to separate. 💫
Cheese Melting Secrets
Add cheese gradually while stirring constantly over low heat to prevent clumping. For extra smoothness, melt ½ cup cheese first, then stir it into the remaining soup. Pre-shredded cheese? Grating your own makes all the difference—it melts more evenly.
Sharp cheddar from Whole Foods or Trader Joe's delivers the best tangy flavor without overpowering the dish.
Temperature Control
Never let the soup boil after adding dairy—it causes separation. Maintain low heat when incorporating milk and cream, and stir frequently. If the soup thickens too much, thin it with warm broth instead of cold milk.
The ideal serving temperature is 180-190°F, where the cheese stays silky but the soup remains warm.
Lemon Juice Timing
Add the 1 tablespoon lemon juice just before serving to preserve its bright acidity. If added too early, the heat will dull its flavor. The lemon cuts through the richness beautifully, balancing the cheddar's sharpness.
For extra zing, add a pinch of red pepper flakes with the lemon juice—it adds a subtle kick that pairs perfectly with the creamy base.
Crispy Topping Hack
For the perfect bread crumb topping, mix ¼ cup panko with 1 tablespoon melted butter and toast in a dry skillet for 2-3 minutes until golden.
Sprinkle over individual servings right before broiling to keep it crispy. Alternatively, use crumbled bacon for a smoky twist that adds depth to every spoonful.
Nutrition facts
Frequently asked questions
Can I make this soup without dairy?
For a dairy-free version, replace the milk and heavy cream with 1 ½ cups full-fat coconut milk and use vegan cheddar cheese (or nutritional yeast for a cheesy flavor). The texture will be slightly lighter but still creamy.
Why does my broccoli cheddar soup get grainy?
Graininess usually happens when cheese doesn't melt smoothly or flour isn't cooked properly. Always melt cheese over low heat while stirring constantly, and cook the flour roux for 1-2 minutes to remove the raw taste. For extra smoothness, blend the soup again after adding cheese.
Can I prep this soup ahead of time?
Yes! This soup tastes even better the next day. Store it in an airtight container in the fridge for 4-5 days. For freezing, cool it completely first, then freeze for up to 3 months. Reheat gently on the stove with a splash of milk or broth to restore creaminess.
What's the best way to reheat leftovers?
Reheat leftovers on the stove over medium-low heat, stirring frequently. If it thickens too much, add a splash of warm broth or milk. Never microwave directly from the fridge—this can cause cheese separation. For best results, reheat just until warm, then add fresh lemon juice and toppings.
Can I use frozen broccoli instead of fresh?
Frozen broccoli works perfectly—just thaw it first and drain any excess water. The texture will be slightly different but still delicious. For extra flavor, add ½ teaspoon garlic powder to the sautéed onions to compensate for the milder taste of frozen florets.
