Win a $200 Amazon Gift Card by cooking this month’s recipe!

This cheesy broccoli casserole from scratch is filled with fresh broccoli and a homemade cream sauce. A buttery, cheesy breadcrumb topping adds a crispy finishing touch to this classic broccoli casserole.

broccoli casserole in dish with spoon

Besides the sweet potato casserole, mashed potatoes, stuffing, and roast turkey, one dish that always graces my family’s Thanksgiving table is broccoli casserole. Ever since I first made this broccoli casserole recipe years ago, it has been my family’s favorite holiday side dish. Thanksgiving dinner isn’t complete without it!

Before I created this from scratch broccoli casserole, the broccoli cheese casserole recipe that we had made forever included cream of mushroom soup, mayonnaise, and a Ritz cracker topping. It was undeniably delicious, so for years I ignored the fact that the casserole was made with not-so-healthy ingredients that I usually avoid.

small bowl of broccoli casserole

One day I got to thinking, it doesn’t have to be that way. There’s no reason why my broccoli casserole has to be made with canned cream of mushroom soup or mayo. I set out to create a broccoli casserole that tastes just as good as the original, but is made totally from scratch. You’ll love this easy broccoli cheddar casserole without mayonnaise!

This healthier broccoli casserole is made with fresh broccoli and mushrooms. I recommend using fresh broccoli if you can because the texture is much better than frozen. If you don’t care for mushrooms you can leave them out.

This broccoli casserole has an easy homemade creamy sauce, which, combined with the sauteed mushrooms is so much better than condensed soup from a can.

Instead of crackers this broccoli and cheese casserole has a crunchy, cheesy, homemade whole-wheat breadcrumb topping. You can replace the breadcrumbs with crushed Ritz crackers if you want a quick shortcut.

ingredients for broccoli casserole in glass bowl

Good quality store-bought breadcrumbs can be used, if you like. If you’re so inclined to go the completely homemade route, I’ve included easy directions for making your own breadcrumbs below. It only takes a few minutes.

This broccoli casserole from scratch takes a little more time and effort to make than the kind made with packaged ingredients. For me, it’s worth it to do a little more work in the kitchen to create a dish that I can feel good about eating and sharing with my family. And of course, the taste of completely from scratch food is always best.

How to make broccoli casserole:

  1. Start by boiling or steaming broccoli. Drain and rinse under cold water.
  2. Sauté the mushrooms and onion in some butter.
  3. Make the cream sauce: Make a roux with butter and flour. Whisk in milk and half and half and cook until thickened.
  4. Combine the broccoli, mushrooms, onion, an egg, cheddar cheese, cream sauce and some breadcrumbs.
  5. Put the broccoli mixture in a baking dish.
  6. Make the crispy topping with melted butter, breadcrumbs and shredded cheddar.
  7. Bake the casserole and enjoy!

To make this broccoli casserole ahead:

  • My family usually assembles and bakes this casserole the day before Thanksgiving, and then we reheat it right before Thanksgiving dinner. Reheat directions follow the recipe below.
  • You can also assemble the casserole one day ahead, refrigerate, and bake it the next day. Add about 10 minutes to the bake time if the casserole is cold from the refrigerator.

Do you have a favorite dish that’s always on your holiday table? I’d love to hear what it is! Leave a comment to let me know. And then go make this delicious broccoli casserole. It’s become a favorite for so many readers, and it might become your new favorite too!

Tips for making this Broccoli Casserole

  • Be careful not to overcook the broccoli. It should still be crisp-tender after boiling as it will cook more in the casserole.
  • Fresh broccoli is best in this recipe, but you may use frozen if necessary.
  • If you’d like a substitute for the Greek yogurt, you can replace it with mayonnaise or sour cream. Readers have tried both with good success.
  • You can replace the half and half with whole milk.
  • I like to make homemade breadcrumbs to top my casserole, as it only takes a few minutes. Store-bought breadcrumbs, Panko, or crushed Ritz crackers can also be used.
  • If you want to double this recipe, bake it in two separate baking dishes. A double recipe will not fit in a 9×13-inch dish.
  • To make broccoli rice casserole, stir in 1 cup of cooked rice to the broccoli mixture before baking.
  • Oven space tip: My family bakes this broccoli casserole (and our other side dishes) after the turkey comes out of the oven on Thanksgiving. The turkey rests for 45 minutes while the side dishes bake.

My other favorite Thanksgiving side dishes:

close up of baked broccoli casserole ready to serve and eat at Thanksgiving
Broccoli casserole in baking dish with serving spoon.
5 from 16 ratings

Broccoli Casserole From Scratch

Servings: 10
Prep Time: 45 minutes
Cook Time: 45 minutes
Total Time: 1 hour 30 minutes
This cheesy broccoli casserole from scratch is filled with fresh broccoli and a homemade cream sauce. A buttery, cheesy breadcrumb topping adds a crispy finishing touch to this classic broccoli casserole.


  • 2 ½ pounds broccoli florets, cut into bite-size pieces (about 8 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


  • Preheat oven to 350 degrees F. Lightly spray a 3 quart baking dish with cooking spray.
  • Bring a large pot of water to a boil. Add broccoli and boil for 4 minutes. Transfer to a colander, rinse with cold water, and drain. Place broccoli in a large bowl.
  • Meanwhile, melt 1 tablespoon of the butter in a medium saucepan over medium-low heat. Add the mushrooms and onion and cook until soft, about 4 minutes, stirring occasionally. Transfer to the bowl with the broccoli.
  • In the same saucepan, melt 4 tablespoons of the butter over medium heat. Whisk in the flour until smooth. Cook, whisking constantly, for 30 seconds. Whisk in the milk and half and half. Bring to a low simmer and continue to whisk constantly until thickened. Remove from the heat and stir in the salt, pepper, and Greek yogurt.
  • Pour the sauce into the bowl with the broccoli, mushrooms and onion. Add the egg, 1 cup of the cheddar cheese, and ½ cup of the breadcrumbs. Stir to combine. Transfer to the prepared baking dish.
  • Melt the remaining tablespoon of butter and stir into the remaining ¾ cup breadcrumbs. Stir in the remaining ½ cup cheddar. Sprinkle breadcrumb topping over the casserole.
  • Cover with foil and bake for 30 minutes. Uncover and bake 15-20 minutes more, until topping is lightly browned and casserole is hot. Let stand 10 minutes before serving.


  • To make homemade breadcrumbs:  Preheat oven to 300 degrees F. In a food processor, process 4 slices whole-wheat bread until you have fine crumbs. Lay crumbs on a rimmed baking sheet and place in the preheated oven until dry and very lightly golden, about 15 minutes. Stir after 10 minutes to help crumbs brown evenly. Unused breadcrumbs can be stored in the freezer.
  • You can assemble the casserole one day ahead, refrigerate, and bake it the next day. Add about 10 minutes to the bake time if the casserole is cold from the refrigerator.
  • To reheat broccoli casserole:  Bake, covered, in a 350° F oven until hot, about 25 to 35 minutes, then uncover for 5 to 10 minutes to crisp the topping.
  • You can substitute the plain Greek yogurt with mayonnaise or sour cream, if desired.
  • Recipe slightly modified 6/22/24 to call for sautéing the onions with the mushrooms.
Serving: 1/10 recipe, Calories: 272kcal, Carbohydrates: 21g, Protein: 13g, Fat: 16g, Saturated Fat: 9g, Cholesterol: 61mg, Sodium: 363mg, Fiber: 4g, Sugar: 6g
Nutrition information is an estimate.
Cuisine: American
Course: Side Dish
Tried this recipe?Mention @kristines_kitchen on Instagram or tag #kristineskitchenblog.
This site contains affiliate links. If you make a purchase through these links, I may receive a small commission, at no extra cost to you. Thank you for supporting Kristine's Kitchen!