Broccoli Casserole

Broccoli Casserole
⏱️ cook time 45 minutes
🍽️ servings 6
⚡ Difficulty easy

intro

A cozy, creamy baked broccoli dish topped with crispy buttery breadcrumbs, a beloved comforting side perfect for holiday spreads and family meals.

Ingredients

Fresh broccoli florets 900 g (8 cups, roughly chopped)
Unsalted butter 85 g (6 tablespoons, divided)
Yellow onion 150 g (1 medium, finely diced)
All-purpose flour 24 g (3 tablespoons)
Whole milk 360 ml (1.5 cups)
Sharp cheddar cheese 220 g (2 cups, shredded, divided)
Sour cream 113 g (1/2 cup)
Garlic powder 1 teaspoon (3 g)
Kosher salt 1 teaspoon (5 g)
Ground black pepper 1/2 teaspoon (1 g)
Panko breadcrumbs 60 g (3/4 cup)

Steps

1

Blanch the broccoli

Bring a large pot of heavily salted water to a rolling boil over high heat. Add 900g of fresh broccoli florets and cook for exactly 2 minutes until bright green and crisp-tender. Drain immediately and submerge in ice water for 3 minutes to stop the cooking process, then drain thoroughly and pat dry with paper towels to remove excess moisture.

Step 1
step1:Blanch the broccoli
2

Sauté the onion base

Preheat your oven to 190°C (375°F) and grease a 23x33 cm (9x13 inch) baking dish with 1/2 tablespoon (7g) of the unsalted butter. Melt 4 tablespoons (57g) of butter in a large saucepan over medium heat. Add the 150g finely diced yellow onion and cook for 4 minutes, stirring occasionally, until soft and translucent with no golden browning.

Step 2
step2:Sauté the onion base
3

Make the cheese sauce

Sprinkle 3 tablespoons (24g) of all-purpose flour over the cooked onion, stirring constantly for 1 minute to cook out the raw flour taste. Slowly pour in 360ml of whole milk while whisking continuously to prevent lumps from forming. Bring the sauce to a gentle simmer over medium-low heat, cooking for 3 minutes until thick enough to coat the back of a spoon. Remove the pan from heat, then stir in 170g (1.5 cups) of the shredded sharp cheddar, 113g sour cream, 1 teaspoon garlic powder, 1 teaspoon kosher salt, and 1/2 teaspoon ground black pepper until completely smooth.

Step 3
step3:Make the cheese sauce
4

Combine casserole filling

Add the fully drained, dried broccoli florets to the finished cheese sauce, tossing gently with a rubber spatula until every floret is evenly coated in creamy sauce. Pour the entire mixture into the prepared baking dish, spreading it into a smooth, even layer across the dish with the spatula.

Step 4
step4:Combine casserole filling
5

Add crispy crumb topping

In a small mixing bowl, combine the remaining 50g (0.5 cup) of shredded cheddar, 60g panko breadcrumbs, and remaining 1.5 tablespoons (21g) of melted unsalted butter, stirring until the crumbs are evenly coated in butter. Sprinkle this crumb mixture in an even layer over the entire surface of the casserole filling.

Step 5
step5:Add crispy crumb topping
6

Bake until golden bubbly

Place the baking dish on the middle rack of the preheated 190°C (375°F) oven, uncovered, and bake for 25-28 minutes until the sauce is actively bubbling around the dish edges and the breadcrumb topping is deep golden brown and crispy. Remove the casserole from the oven and let it rest for 5 minutes before serving to allow the sauce to set.

Step 6
step6:Bake until golden bubbly

Tips

1.Pat blanched broccoli completely dry with paper towels before mixing into the cheese sauce—trapped excess water on the florets will create a runny, watery casserole instead of the desired thick, creamy texture.
2.For a richer, savorier profile, stir 55g (1/4 cup) of cooked, crumbled bacon or 1/4 teaspoon of smoked paprika into the cheese sauce before adding the broccoli.
3.This casserole can be fully assembled, covered tightly with plastic wrap, and stored in the refrigerator for up to 24 hours before baking; add 5 minutes to the total bake time if cooking straight from chilled.

✨ You May Also Like

Side Dishes
🍜 India

Velvety, aromatic all-purpose curry sauce perfect for tossing with roasted veggies, grilled protein, or rice for fast, cozy, flavorful meals.

⏱️ 25 minuteSide Dishes ★ 4.7
Side Dishes
🍜 Spain

Tender, starchy boiled yuca tossed in bright, garlicky citrus mojo sauce—an iconic, zesty side that pairs beautifully with roasted pork, grilled meats, and rice and beans.

⏱️ 40 minuteSide Dishes ★ 4.8
Side Dishes
🍜 United States

Tender, paper-thin potato flatbread, a beloved Norwegian-American Minnesota Christmas staple, griddled until softly spotted and served warm with butter.

⏱️ 1 hour 30Side Dishes ★ 4.8
Side Dishes
🍜 United States

Rich, deeply savory cured salt pork, a long-lasting kitchen staple perfect for frying crispy as a side or adding umami to stews, beans, and chowders.

⏱️ 7 days (2Side Dishes ★ 4.9
Side Dishes
🍜 United States

Crispy, tangy classic Southern fried green tomatoes with a crunchy cornmeal crust, served hot for a nostalgic, comforting summery bite.

⏱️ 25 minuteSide Dishes ★ 4.9
Side Dishes
🍜 United States

Moist, golden-crusted savory muffins with sweet corn, zesty jalapeño, and melted cheddar, perfect for pairing with smoky summer grilled fare.

⏱️ 30 minuteSide Dishes ★ 4.8

Broccoli Casserole:Frequently Asked Questions

1.Can I use frozen broccoli instead of fresh for this casserole?
You absolutely can—just thaw it completely first and squeeze out as much excess moisture as you can with paper towels or a colander, otherwise your creamy sauce will turn watery. Skip pre-steaming frozen broccoli, since it’s usually blanched before freezing; pat it dry, toss it in sauce, and bake as directed for the same cozy, tender texture.
2.Why does my creamy sauce turn out lumpy every time I make this?
Lumps almost always come from adding cold milk too quickly to your hot roux of melted unsalted butter and all-purpose flour. Warm your whole milk slightly first, then whisk it into the roux ¼ cup at a time, stirring constantly between additions until smooth. If you still get small lumps, strain the sauce through a fine sieve before mixing in broccoli for a silky finish.
3.Can I make this casserole ahead of time for holiday meals?
Definitely! Assemble the casserole fully, but hold off on adding the buttery breadcrumb topping until right before baking, then cover tightly and refrigerate for up to 24 hours. When you’re ready to bake, add the crumbs and tack on 5-7 extra minutes of bake time to account for the cold dish, and it’ll taste just as fresh as if you made it day-of.
4.How do I get a crispy, not soggy, breadcrumb topping?
The trick is to toss your breadcrumbs in melted unsalted butter first so every crumb is lightly coated, then spread them in an even layer over the top right before baking. Don’t add the topping early when prepping ahead, as moisture from the casserole will soak into the crumbs and leave them soft instead of golden and crisp.
5.Do I need to pre-cook fresh broccoli florets before baking?
For fresh broccoli, a quick 2-minute blanch in boiling salted water followed by an ice bath prevents it from turning mushy during baking and locks in bright green color. Don’t fully cook it beforehand, though—leave it crisp-tender, since it will continue to cook in the creamy sauce while the casserole bakes to perfect doneness.
6.Can I use a milk alternative instead of whole milk to lighten the recipe?
You can swap whole milk for 2% dairy milk or barista-blend oat milk for a similar creamy texture, but skip skim milk or thin unsweetened almond milk, as those will make the sauce watery and lacking richness. If using plant-based milk, stir in an extra tablespoon of all-purpose flour to your roux to help the sauce thicken properly.
7.How do I keep the diced yellow onion from making the sauce taste bitter?
Dice your yellow onion small, and cook it slowly in melted unsalted butter over medium-low heat until soft and translucent, not browned or crispy, before adding flour to make your roux. Cooking the onion low and slow brings out its natural sweet, mellow flavor, while high heat that chars edges quickly will leave a bitter aftertaste.
8.Why is my finished casserole watery after baking?
Watery casserole almost always traces back to excess moisture on your broccoli, whether fresh florets weren’t drained well after blanching, or frozen broccoli wasn’t squeezed fully dry. You can also cook your roux a full 2 minutes until it smells nutty before adding milk, so it has enough thickening power to hold the sauce together as it bakes.
9.Can I add extra mix-ins like cheese or protein to this classic recipe?
Absolutely—this classic base is super flexible. Stir in 1 cup of shredded sharp cheddar into the warm sauce for a cheesier twist, or add cooked diced chicken, crumbled bacon, or roasted mushrooms for a heartier dish. Just make sure any add-ins are patted dry first, so they don’t add extra moisture that thins out the creamy sauce.
10.What temperature and bake time works best for this casserole?
Bake your assembled casserole uncovered at 375°F for 25 to 30 minutes, until the sauce is bubbling around the edges and the breadcrumb topping is deep golden brown and crispy. If your crumbs start to brown too quickly before the sauce is bubbly, tent a loose piece of aluminum foil over the top for the last 10 minutes to prevent burning.
11.Can I freeze leftover creamy broccoli casserole?
Yes—let the fully cooked casserole cool completely first, then portion it into airtight, freezer-safe containers and freeze for up to 3 months. Reheat portions in the oven at 350°F covered for 15 to 20 minutes, until heated through; add a sprinkle of fresh buttered breadcrumbs on top to bring back that signature crispy texture.
12.How can I make this recipe gluten-free without losing its classic texture?
You can easily make this gluten-free by swapping the all-purpose flour in the roux for a 1:1 gluten-free all-purpose baking flour, and using gluten-free panko or breadcrumbs for the topping. Make sure your gluten-free flour blend has xanthan gum in it to help the sauce thicken smoothly, so you won’t notice a texture difference from the original.

Comments (14)

2 days ago

OMG this was SO good! I made this for our Sunday family dinner last night and even my kid who swears he hates broccoli asked for seconds. I used fresh broccoli instead of frozen and it turned out perfectly creamy, no weird grainy texture like other broccoli casserole recipes I’ve tried. Total game changer for weeknight sides!

yesterday

Wait did you add extra cheese? I’m making this for my work potluck next week and want to make sure it’s a hit!

yesterday

So glad your family loved it! Adding a 1/2 cup extra sharp cheddar on top during the last 10 minutes of baking is always a crowd pleaser for potlucks – just make sure to cover it with foil if it’s traveling so it stays warm!

1 week ago

Super easy recipe that’s perfect for meal prep! I made a big batch on Sunday, portioned it out for lunches all week, and it reheats like an absolute dream. No sogginess, the cream sauce stays rich even after microwaving. Only change I made was adding a tiny pinch of red pepper flakes for a little kick, 10/10 would make again.

5 days ago

Love the red pepper flake hack! That’s such a great way to add a subtle heat without overpowering the classic creamy flavor. Thanks for sharing your meal prep tip!

3 days ago

This tastes exactly like the broccoli casserole my grandma used to make for Thanksgiving every year! The buttery cracker topping is chef’s kiss, I was worried it would be too rich but it’s perfectly balanced. Already added this to my permanent holiday side rotation.

2 hours ago

Help! I was so excited to make this for my boyfriend’s family dinner this weekend, but my sauce came out super lumpy when I mixed in the cheese? Did I do something wrong? I’m a total beginner and this is the first casserole I’ve ever tried to make, so I’m sure it’s my mistake, but I’m stressed it won’t turn out right 😅

30 minutes ago

Don’t panic! I had that happen my first time too – you’re probably adding the cheese when the heat is too high, or dumping it all in at once. Turn the burner to low, whisk in small handfuls of cheese slowly and it’ll smooth right out!

5 minutes ago

Great tip from @HomeCookVeteran! High heat is the #1 culprit for lumpy cheese sauce. If you’re still seeing little lumps after whisking, you can pour the sauce through a fine mesh strainer before mixing it with the broccoli for a perfectly silky result – you’ve got this!

5 days ago

Dude. I put this out at my game night watch party last weekend and the entire pan was gone in 15 minutes. People were asking me for the recipe before halftime even hit. I added crumbled bacon on top because, well, bacon makes everything better, and it was insane.

3 days ago

The bacon addition is genius, I’m doing that next time! Did you use pre-cooked bacon or fry it up fresh?

1 week ago

Was so happy to find how easy this is to make gluten free! I swapped the regular cream of mushroom for GF cream of mushroom and used gluten free butter crackers for the topping, and my whole family (none of whom are GF) couldn’t even tell the difference. No weird aftertaste, just pure creamy broccoli goodness.

5 days ago

That’s such a fantastic swap! We love that this recipe is so customizable for different dietary needs – the GF cracker topping is such a good call, I’ll have to note that in the recipe tips soon!

2 weeks ago

As a college student with basically zero cooking skills and a tiny dorm oven, this was so easy to pull off! Only needed a handful of ingredients, no fancy equipment, and it cost way less than ordering takeout. My roommates are already begging me to make it again next week.

3 days ago

Has anyone tried freezing this after assembling? I’m stocking my freezer ahead of the new baby coming and this seems like it would be perfect to pull out and bake on busy nights with a newborn. I made it once a couple weeks ago and loved it, just want to make sure it freezes well!

2 days ago

I froze two pans of this before my twins were born and it worked perfectly! Just let it thaw in the fridge overnight before baking, add an extra 10 minutes to the cook time if it’s still a little cold in the middle. Total lifesaver for those first few sleep-deprived weeks!

2 days ago

I’ve always thought broccoli casserole was that sad, mushy side people drag out for potlucks that no one actually wants to eat, but this recipe completely changed my mind. The broccoli stays crisp-tender, the sauce is creamy not gloopy, and the cracker topping adds the perfect crunch. I might even volunteer to bring a side to Thanksgiving this year because of this.

yesterday

Same! I avoided broccoli casserole for YEARS because of the sad cafeteria version, but this one is nothing like that. I made it last month and my brother who hates all vegetables had three servings.

yesterday

That’s exactly what we love to hear! So many people write off broccoli casserole because of overcooked, mushy versions – keeping the broccoli crisp-tender is the secret to making it feel fresh instead of heavy.

5 minutes ago

Pro tip: mix a little bit of parmesan into the cracker topping for an extra salty, cheesy crunch. I did that last time I made this and it elevated the whole dish so much. Will never make it without that little addition now!

yesterday

Made this last night with frozen broccoli because that’s all I had in the freezer, and it still turned out amazing! I was worried frozen would make it too watery, but I squeezed the excess water out after steaming it like the recipe note said, and it was perfect. Saved me a last minute grocery run, thank you!

2 hours ago

So glad that tip worked for you! Squeezing the excess moisture out of frozen broccoli is such a simple step but it makes all the difference between a watery casserole and a perfectly creamy one. Thanks for giving it a try!

1 week ago

Tried this last night but swapped half the broccoli for cauliflower because I had a head I needed to use up, and it was chef’s kiss! The cream sauce goes so well with both veggies, I might even add some diced carrot next time for extra color and veggie servings.

5 days ago

I did the same broccoli-cauliflower mix last week! Added a handful of fried onions on top too for extra crunch, it was such a hit with my book club.

3 days ago

What a great swap! The cream sauce pairs beautifully with almost any roasted veggie – diced carrot would be a fantastic addition for a little extra sweetness and color. Love the creativity!

2 weeks ago

I bring this to every single potluck and neighborhood cookout I get invited to, and I always leave with an empty pan and at least three people asking for the recipe. It’s easy to transport, doesn’t need any fancy last minute prep, and even people who say they don’t like casseroles go back for seconds. Absolute crowd favorite.

2 hours ago

I was worried I’d have a ton of leftovers that would go to waste after making this for my small family of three, but we ate every single bit in two days. Even cold straight out of the fridge late at night it’s good, don’t judge me 😂

30 minutes ago

No judgment at all! I ate a cold scoop of this straight from the fridge last night after my late shift and it was even better than it was fresh out of the oven. There’s no wrong way to eat this casserole!