Broccoli Cheddar Soup

Bowl of creamy broccoli cheddar soup topped with shredded cheddar and a slice of crusty bread

This broccoli cheddar soup recipe fixes the one mistake that turns a good version grainy: adding the cheese straight into hot broth without a proper roux underneath it to hold everything together. Butter and flour, cooked together for a full two minutes before any liquid goes in, give the cheese something to bind to, so it melts into a smooth, glossy soup instead of separating into little curds.

Beyond that one fix, this is the soup most people already know, built from scratch instead of a can, with broccoli that stays bright green because it never sits in a hard boil.

A Short History

Broccoli cheddar soup as most people know it in the United States is a relatively modern, restaurant-chain-driven dish rather than an old regional recipe, though it draws directly on a much older French technique: a veloute, built by thickening a broth with a butter and flour roux before dairy and other flavorings go in. Cheddar itself is a British import that became an American staple, and pairing it with broccoli in a thickened soup turned into comfort food standard sometime in the latter half of the twentieth century, popular enough that it's now more associated with bread bowls than with any single region.

Most of the versions that disappoint trace back to skipping the roux step entirely, thickening with cornstarch instead or just dumping cheese into hot broth and hoping. The roux is what actually separates a restaurant-quality bowl from a thin, oily one.

The Four Components

  • The vegetable base. Onion and carrot, softened first to build sweetness under the cheese.
  • The roux. Butter and flour, cooked together before any liquid goes in.
  • The broccoli. Simmered gently, never boiled hard, so it stays bright green and holds its shape.
  • The cheese. Sharp cheddar, stirred in low and slow at the very end.

Choosing the Broccoli

Fresh broccoli, chopped into small florets so it cooks through quickly and evenly, gives the best texture and color here. Cut the stems into small dice too rather than discarding them; they hold their texture well and add real flavor once they're diced small enough to cook at the same rate as the florets. Frozen broccoli works in a pinch, already blanched, so it needs less simmering time, but it tends to turn a slightly duller green and softer texture than fresh does once it's fully heated through.

The Technique That Makes It: Building a Proper Roux Before the Dairy Goes In

Cheese melted directly into hot liquid, with nothing to bind it, tends to separate: the fat pulls away from the proteins and the whole pot turns grainy and a little oily on the surface. A roux, butter and flour cooked together over medium heat until it turns pale gold, gives the soup a stable, thickened base that holds fat and dairy in suspension instead of letting them break apart.

The roux needs a full two minutes of actual cooking, whisked constantly, before any broth goes in; this cooks off the raw flour taste and starts the starch working as a thickener. Add the broth gradually afterward, whisking the whole time, so it incorporates smoothly instead of forming lumps. Only once that base is smooth and simmering does the cheese go in, off any hard heat.

Broccoli Cheddar Soup

Serves 4. Prep 15 minutes, cook 25 minutes, total about 40 minutes.

Ingredients

Vegetable Base and Roux

  • 3 tablespoons butter
  • 1/2 onion, diced
  • 1 carrot, diced small
  • 2 cloves garlic, minced
  • 1/4 cup flour
  • 3 cups vegetable broth
  • 1 1/2 cups whole milk or half-and-half

Broccoli and Cheese

  • 3 cups broccoli florets, chopped small (stems diced too)
  • 2 cups shredded sharp cheddar
  • Pinch of nutmeg
  • Salt and black pepper, to taste

Method

Mise en Place

  1. Dice the onion and carrot, mince the garlic, and chop the broccoli, including the stems, into small pieces.

The Roux and Broth

  1. Melt the butter in a pot over medium heat. Add the onion and carrot, and cook about 5 minutes, until softened.
  2. Add the garlic and cook 30 seconds. Sprinkle in the flour, whisking constantly, and cook 2 minutes, until it turns light golden.
  3. Gradually whisk in the vegetable broth, a little at a time, until smooth. Then whisk in the milk.

The Broccoli

  1. Add the broccoli, bring to a gentle simmer, not a boil, and cook 10 to 12 minutes, until tender but still bright green.

Finish with Cheese

  1. Reduce the heat to low. Stir in the cheese a handful at a time, off any hard boil, until fully melted and smooth. Season with the nutmeg, salt, and pepper.
Ladle lifting creamy broccoli cheddar soup from the pot

Doneness

The broccoli is done the moment it's tender enough to easily pierce with a fork while still holding a bright green color; past that point it starts to turn a duller olive shade and lose some texture. The finished soup should coat the back of a spoon and look glossy and fully smooth, with no visible flecks of separated fat or grainy cheese anywhere in the pot.

Nutrition (per serving, estimated)

Calories 435
Fat 31 g
Saturated Fat 18 g
Cholesterol 90 mg
Sodium 1,000 mg
Carbohydrates 22 g
Fiber 3 g
Sugar 8 g
Protein 19 g

Figures are an estimate calculated from the ingredients above, not a lab-verified value.

Get Ahead: A Timing Plan

  • Up to 2 days ahead: make the soup through the broccoli simmer step and refrigerate, holding the cheese until you reheat it.
  • Right before serving: reheat gently over low heat, then stir in the cheese off any hard heat so it melts smoothly.

Wine Pairing

  • Unoaked Chardonnay - its own creamy texture matches the soup, with enough acid to keep the pairing from feeling heavy.
  • Dry Riesling - bright acid cuts straight through the cheese and butter without adding sweetness to the bowl.

Building the Meal Around It

A crusty bread bowl or a thick slice of sourdough alongside is the classic pairing, and a simple green salad balances the richness. For more soup options on the same table, our Minestrone Soup and Low-Sodium Butternut Squash Soup both sit well next to this one for a rotation of lighter and richer bowls.

Cooking for a Crowd

A roux does not scale perfectly linearly, so past doubling the recipe, build it in two separate batches rather than tripling the butter and flour in one pot, where it's harder to whisk evenly and more prone to scorching. Keep the finished soup warm in a slow cooker on low, stirring occasionally, and hold off adding the cheese until closer to serving time if it's going to sit for a while, since prolonged heat is what causes graininess even in a well-made roux base.

Troubleshooting

  • The soup turned grainy. The cheese was added over too much heat, or the soup boiled after the cheese melted in. Keep the heat low once the cheese goes in and never let it come to a boil.
  • The soup tastes like raw flour. The roux wasn't cooked long enough before the broth went in. Cook the butter and flour together a full two minutes, until light golden, before adding any liquid.
  • The broccoli turned gray and mushy. It simmered too long or at too high a heat. Keep it at a gentle simmer and pull it the moment it's fork-tender.
  • The soup is too thick or too thin. The roux ratio was off, or it reduced too much or too little. Thin it with a splash of broth, or let it simmer a bit longer uncovered to thicken.

Variations

  • Add cauliflower. Alongside the broccoli, for a different texture in the same bowl.
  • Spicy version. A pinch of cayenne or a dash of hot sauce stirred in at the end.
  • Lighter version. Swap part of the half-and-half for low-fat milk; the soup will be slightly thinner but still creamy.
  • Extra toppings. More shredded cheese and croutons on top for texture and richness.

Frequently Asked Questions

Can I use frozen broccoli?

Yes. It's already blanched, so it needs less simmering time than fresh, closer to 6 to 8 minutes, and it will be a bit softer in texture and slightly duller in color.

Why did my cheese turn grainy?

Almost always too much heat. Cheese added to a boiling soup, or a soup that boils again after the cheese melts in, tends to separate into a grainy texture. Keep the heat low from that point forward.

Can I make this soup ahead?

Yes, through the broccoli simmer step. Refrigerate it without the cheese and stir the cheese in fresh when you reheat it to serve.

Is broccoli cheddar soup vegetarian?

Yes, as written here. It's built on butter, dairy, and vegetable broth, with no meat, poultry, or fish anywhere in the pot.

Can I freeze it?

It's not ideal. Dairy-based, roux-thickened soups tend to separate and turn grainy after freezing and thawing. This one is best made fresh or held only a few days in the fridge.

What cheese works best?

A good sharp cheddar, shredded fresh off a block rather than pre-shredded, melts the most smoothly; pre-shredded cheese is often coated with anti-caking agents that can affect how evenly it melts into the soup.

More Vegetarian Recipes

This recipe is part of Wine Drop Cookery's Vegetarian Recipes collection.

Who Is Writing This

I'm Chef Alan. I have spent 35 years in professional kitchens, I have formal culinary education in New Hampshire, and I have been honored as a 6-Time 4-Diamond Chef. More about me here.

If a recipe is missing something you needed, or a step didn't make sense, tell me. Get in touch and I'll fix it.

Cook Bolder, Serve Wiser, Eat Better.