Broccoli Casserole
This tasty broccoli casserole features fresh broccoli blended with a creamy homemade sauce, all topped with a golden, buttery, cheesy breadcrumb crust. I’ve been making this family favorite for over a decade, and it never fails to be the star side dish on our table!

This Broccoli Casserole is a must-try!
Alongside classic Thanksgiving staples like mashed potatoes, stuffing, and roast turkey, this broccoli casserole has been a proud regular at my family’s holiday table for years. Ever since I first cooked it, this dish quickly became the favorite side everyone looks forward to the most. Thanksgiving just wouldn’t feel complete without it! For a lighter, make-ahead complement, you might also enjoy our Broccoli Salad.
If you want to skip the typical broccoli casserole made with canned cream of mushroom soup and mayo, this homemade version is exactly what you need. It’s loaded with fresh broccoli, melty cheese, and a simple, scratch-made cream sauce. The mushrooms add an earthy richness, making it so much better than anything from a can. Serve it with soft, easy, no-knead dinner rolls to soak up the creamy sauce.
I now bring this casserole every year to our festive meals, and it’s been a hit with readers and family alike. I’m sure you’ll fall in love with it too!
This broccoli casserole blew me away! I’ve made it several times and it’s a total crowd-pleaser.

Why you’ll love this broccoli casserole
This isn’t just your everyday side—it’s a classic that gets requested year after year. Here’s what makes it so special and worth the little extra effort to make from scratch:
- Fresh, homemade goodness: The velvety sauce is crafted with milk and half-and-half thickened in a roux, then finished with Greek yogurt for brightness. It tastes fresher and perfectly balanced compared to canned soup versions.
- Hearty, fresh ingredients: Loaded with crisp fresh broccoli, flavorful sautéed mushrooms, and sweet onions, this dish boasts real vegetable flavor and a great texture—not soggy or mushy.
- Best of both worlds: The creamy, cheesy filling pairs perfectly with a crisp, buttery breadcrumb topping that browns beautifully in the oven for a delightful crunch. If you love this style of creamy, veggie-forward bake, you might also enjoy our Cheesy Cauliflower Bake.
- Perfect for prepping ahead: You can put it together a day before and bake when ready, or bake it a day ahead and simply reheat. Both methods work great for busy holiday cooking (see notes below).
- Feeds a crowd: This recipe makes about 10 servings, ideal for holiday dinners or big family gatherings. Double it if you need to—just use two baking dishes.
- Adaptable and forgiving: Switch Greek yogurt for mayo or sour cream, use frozen broccoli if needed, or lighten/rich up the sauce with simple dairy swaps. It’s flexible and delicious every way.
- Comfort food at its best: It’s creamy, cheesy, warm, and satisfying—a guaranteed hit on any holiday table or family dinner night.
So if you want a broccoli side that’s full of flavor, feels homemade, and fits easily into a busy schedule, this casserole is your go-to recipe. Prefer a soup with the same cozy broccoli-and-cheddar profile? Try the High Protein Broccoli Cheddar Soup.
Ingredients

How to Make Broccoli Casserole
This dish does take a bit more time than the quick canned soup versions, but trust me—it’s so worth it for the flavor and texture you end up with!
Start by cooking the broccoli: Boil it in a big pot of water for about 4 minutes. You want it just tender-crisp because it will soften more as it bakes. Overcooked broccoli can get mushy, so keep an eye on it.
Next, sauté mushrooms and onions in 1 tablespoon butter until they soften up nicely. This adds tons of flavor and keeps the veggies from getting watery in the casserole. Then toss those into a large bowl with the cooked broccoli.

Now, make the creamy sauce. Melt 4 tablespoons of butter in the same pan. Whisk in flour until smooth and cook for about 30 seconds to form a light roux. Slowly pour in milk and half-and-half, whisking constantly until it starts to thicken. Once thickened, remove from heat and stir in salt, pepper, and plain Greek yogurt for a creamy tang.


Combine the sauce with the broccoli, mushrooms, and onions in the large bowl. Add the beaten egg, one cup of shredded cheddar, and half a cup of breadcrumbs. Stir everything until mixed well, then pour it all into a greased baking dish.

Finish by adding the topping—melt the last tablespoon butter, mix with the remaining breadcrumbs, and combine with the last bit of cheddar cheese. Sprinkle this evenly over the casserole. Cover with foil and bake at 350°F for 30 minutes. Then, take off the foil and bake for another 15 to 20 minutes, until the topping is golden and crispy and the casserole is bubbly and hot through.
Scroll down for the full printable recipe card with all quantities and detailed instructions.
Make Ahead Instructions
This broccoli casserole is a lifesaver when it comes to holiday prep because you can make it ahead. Here are your options:
- Bake and reheat: I usually put the casserole together and bake it a day before Thanksgiving. Then, I reheat covered with foil just before serving. The reheating steps are in the notes below.
- Assemble one day ahead, bake the next: You can also mix everything (except the topping—for extra crispiness, add it just before baking; homemade croutons make a great crunchy finish) the day before and refrigerate. Let it warm for about 30 minutes at room temperature before baking, and add 20–30 minutes to the bake time since it will be cold from the fridge.
- Oven timing tip: On the big day, we usually pop this casserole in the oven after the turkey comes out to rest. The turkey rests for around 45 minutes, giving the casserole perfect oven time!
Frequently Asked Questions
Q: Can I substitute frozen broccoli for fresh?
A: Yes! Fresh broccoli offers the best texture and flavor, but frozen works in a pinch. Just be sure to thaw it completely, drain well, and pat dry so your casserole isn’t watery. If fully thawed, you can skip the boiling step, but watch it closely to avoid overcooking.
Q: How far ahead can I assemble or bake this?
A: Two options here—assemble and refrigerate overnight, then bake the next day (add about 30 minutes of baking time since it’s cold), or bake it fully the day before and reheat before serving. For reheating, cover with foil and bake at 350°F until hot, about 40–45 minutes, then uncover for 10 minutes to crisp up the topping.
Q: My topping turns soggy. How do I keep it crunchy?
A: For peak crispiness, add the breadcrumb-cheese topping just before baking. If assembling ahead, try storing the casserole without the topping and add it fresh before baking. Also, uncover the dish for the last 15–20 minutes of baking to brown and crisp that topping beautifully.
Q: Can I swap out Greek yogurt, milk, or half-and-half?
A: Absolutely. You can replace Greek yogurt with mayo or sour cream equally. For lighter sauce, use whole milk instead of half-and-half. For an ultra-rich version, swap the half-and-half for heavy cream. The recipe works perfectly with whole or 2% milk.
Q: What can I use if I don’t have whole-wheat breadcrumbs?
A: Store-bought or homemade regular breadcrumbs work fine, plus crushed Ritz crackers make a tasty alternative. I’ve included a quick method for making your own breadcrumbs from bread if you want fresh and toasty crumbs.
Q: Can I fit a double batch in a 9×13-inch pan?
A: No, a doubled recipe won’t fit in a single 9×13 dish. Use two pans for even baking and the best results.
Q: What pan size and oven temperature do you recommend?
A: Use a 3-quart or 9×13-inch baking dish and bake at 350°F. Cover with foil for the first 30 minutes, then uncover and bake another 15–20 minutes until golden on top and heated through. Let it rest about 10 minutes before serving for perfect texture.
Q: Can this recipe be made gluten-free?
A: Yes! Swap the flour in the sauce with a gluten-free blend and use gluten-free breadcrumbs or crushed crackers for the topping. Everything else stays the same. For an easy gluten-free side, serve it with Brazilian cheese bread.
Tips & Troubleshooting
Here’s a little secret: these tips will help your broccoli casserole turn out perfectly creamy, flavorful, and with just the right texture every time.
- Cut broccoli evenly: Chop into bite-sized, uniform pieces so everything cooks evenly. Thinly slice stems so they roast nicely without going mushy.
- Don’t overcook broccoli: Boil about 4 minutes until it’s crisp-tender. Rinse with cold water to keep that gorgeous green color and immediately drain well. Patting dry is key to avoid a watery casserole.
- If using frozen broccoli: Make sure it’s completely thawed and squeeze or dab out extra moisture. Frozen broccoli holds a lot of water, which can make your dish soupy otherwise.
- Sauté your veggies well: Cook mushrooms and onions until most moisture evaporates—this keeps the final casserole nice and thick without watery spots. For technique tips on moisture control and gentle heat, see our guide to buttered sautéed leeks.
- Get the sauce just right: Whisk until thick enough to coat a spoon’s back. If it’s too runny, your casserole could be loose; too thick, stir in a splash more milk to loosen.
- Avoid curdling with yogurt and egg: Take the sauce off direct heat before adding Greek yogurt. When mixing in the egg, temper it first by whisking some hot sauce into the egg to prevent scrambling.
- Choose fresh shredded cheese: Shred from a block instead of bagged cheese for a smoother melt and better texture.
- Keep your topping nice and crunchy: Mix breadcrumbs with melted butter and toast briefly in a pan or broil the casserole for 1–2 minutes at the end—just watch carefully so you don’t burn it.
- Handling leftovers and make-ahead: Store unbaked casserole covered in the fridge if assembling early, adding extra bake time when cooking from cold. When reheating baked casserole, bake covered until hot, then uncover for a few minutes or broil to refresh crispiness.
- Save oven space: Bake after your turkey comes out to rest. For extra crisp topping when reheating, keep crumbs separate and add during last 10-15 minutes of heating.
- Scaling up: Double the recipe but do it in two baking dishes for even, thorough cooking.
Recipe Variations
- Greek yogurt swaps: Mayo or sour cream work great in place of Greek yogurt—readers have enjoyed both alternatives successfully.
- Breadcrumb options: Homemade breadcrumbs are quick and easy to make (see notes below). Store-bought or crushed Ritz crackers also make a tasty topping.
- Frozen broccoli usage: Fresh is best, but frozen broccoli can be used if you’re in a jam.
- Lighten or enrich the sauce: Swap half-and-half with whole milk for a lighter version, or switch to heavy cream for a richer sauce.
- Double the fun: Want more? Double the recipe but bake in two pans so everything cooks evenly.
- Add rice: Stir in one cup of cooked rice to the broccoli mixture for a hearty broccoli rice casserole variation.

First shared in November 2014. Updated October 2017 and again October 2024 with new photos and even more helpful tips.

A creamy and cheesy broccoli casserole made from fresh broccoli, sautéed mushrooms, onions, and a homemade cream sauce, topped with a buttery and cheesy breadcrumb crust. Ideal for holiday dinners or large family gatherings, this recipe serves about 10 and can be made ahead.
- Total Time: 1 hour 5 minutes
- Yield: 10 servings 1x
Ingredients
- 2 ½ pounds broccoli florets, cut into bite-size pieces (about 10 cups)
- 6 tablespoons butter, divided
- 1 cup finely chopped cremini mushrooms
- 1 cup finely chopped yellow onion
- ¼ cup flour
- 1 cup milk, whole or 2% preferred
- ½ cup half and half
- ½ teaspoon salt
- ¼ teaspoon freshly ground black pepper
- ½ cup plain Greek yogurt, full fat or 2%
- 1 egg, lightly beaten
- 1 ½ cups grated cheddar cheese, divided
- 1 ¼ cups whole-wheat breadcrumbs, homemade or store-bought, divided
Instructions
- Preheat oven to 350° F. Lightly grease a 3-quart or 9×13-inch baking dish with cooking spray.
- Bring a large pot of water to a boil. Add the broccoli and cook for 4 minutes. Drain in a colander and run under cold water to stop cooking. Drain well, then transfer broccoli to a large bowl.
- While broccoli is boiling, melt 1 tablespoon butter in a medium saucepan over medium heat. Add the mushrooms and onions, cooking until soft, about 4 minutes, stirring occasionally. Pour veggies into the bowl with broccoli.
- Return the pan to medium heat and melt the remaining 4 tablespoons butter. Whisk in the flour until smooth. Cook, whisking constantly, for about 1 minute. Slowly whisk in milk and half-and-half, bringing to a low simmer until thickened. Remove from heat and whisk in salt, pepper, and Greek yogurt.
- Pour the sauce over the broccoli mixture. Add the beaten egg, 1 cup of cheddar cheese, and ½ cup of breadcrumbs. Stir until combined. Transfer mixture to the prepared baking dish.
- Melt the final tablespoon butter and mix with the remaining ¾ cup breadcrumbs and the last ½ cup of cheddar cheese. Sprinkle this topping evenly over the casserole.
- Cover casserole with foil and bake for 30 minutes. Remove foil and bake uncovered for an additional 15-20 minutes until topping is golden, and casserole is bubbly and hot. Let rest 10 minutes before serving.
Notes
Greek Yogurt can be substituted with mayonnaise or sour cream if preferred., To make homemade breadcrumbs: preheat oven to 300°F, pulse 4 slices of whole-wheat bread in a food processor until finely ground, spread on a baking sheet, bake for about 15 minutes, stirring halfway., Crushed Ritz crackers make a tasty alternative for the breadcrumb topping., For make-ahead, assemble casserole a day before baking, refrigerate covered, then bake next day adding 20-30 minutes to baking time as it will be cold from fridge., Alternatively, bake casserole a day ahead and reheat covered at 350°F for 40-45 minutes until hot, then uncover and bake 10 more minutes to crisp the topping., Add 1 cup cooked rice to the broccoli mixture for a broccoli rice casserole variation., Double the recipe for larger gatherings but bake in two pans to ensure even cooking., Use gluten-free flour and breadcrumbs for a gluten-free version.
- Prep Time: 15 minutes
- Cook Time: 50 minutes
- Category: Side Dish
- Cuisine: American
Nutrition
- Serving Size: 1/10 of casserole
- Calories: 272 kcal
- Fat: 16 g
- Carbohydrates: 21 g
- Protein: 13 g
More in Side Dishes
Crispy and Easy Zucchini Fritters
Cheesy Cauliflower Bake
Spring Pasta Primavera