Broccoli Casserole (From Scratch!)

Made from scratch, this broccoli casserole is the ultimate comfort food dish. Fresh broccoli is smothered in a creamy mushroom cheese sauce and topped with a crisp, buttery Ritz cracker topping in this filling and wholesome recipe. Serve it with baked chicken, roast turkey, or a classic meatloaf for a hearty meal you won’t soon forget.
When we were growing up, we had Sunday dinner at our grandma’s every single week. Every week, our grandma would cook a spread of pasta, meats, potatoes, vegetables, salad, and more.
One of our great aunt’s most popular contributions was her broccoli casserole. For a crew of kids that weren’t big vegetable fans, we sure did devour it!
What is Broccoli Casserole?
We never had our aunt’s recipe, but we know it was made with cream of mushroom soup, we think frozen broccoli and a Ritz cracker topping. It definitely fell into the category of comfort food, much like the scalloped potatoes that often graced the table that our cousin and we would hoard, right on through adulthood. We've long thought about that broccoli casserole and wanted to recreate it, but with from-scratch, from-scratch adjustments.
This revamped version uses fresh broccoli, chopped mushrooms, A straightforward from-scratch white sauce, some cheddar cheese, and because we cannot quit Ritz crackers, we kept that same buttery cracker topping. The result was memorable and brought back so many fun Sunday afternoon memories.
How to Make From-scratch Broccoli Casserole
- Broccoli Florets – Washed and trimmed and cut into bite-sized pieces.
- Butter – We used unsalted butter to cook the onion and mushrooms as well as to make the roux in the creamy sauce.
- Onion + Mushroom – Finely chopped and cooked for aromatics and flavor in the casserole.
- Cheese Sauce – Made with flour, whole milk, salt, pepper, and shredded cheddar cheese.
- Ritz Cracker Topping – A glorious, buttery mixture of crushed Ritz crackers and melted butter.
Making the Casserole
- Prep for baking: Preheat the oven to 350°F and lightly grease a 9×13-inch baking dish; set aside.
- Blanch the broccoli: Bring a large pot of water to boil. Add the broccoli and boil for 3-5 minutes, until tender enough for a fork to pierce through but still firm. Drain the broccoli and rinse with cold water.
- Cook onion +mushrooms: In a medium skillet over medium-high heat, melt 3 tablespoons of the butter, then add the onion and mushrooms. Cook about 10 minutes, stirring occasionally until the mushrooms release liquid and it evaporates. Transfer to a bowl and set aside.
- Make the roux: In a medium saucepan over medium heat, melt the remaining 5 tablespoons of butter, then add the flour and stir until the mixture is lightly browned and has a nutty aroma, 1 to 2 minutes.
- Cook the sauce: Slowly whisk in the milk until all of the milk has been added. Cook for 2-3 minutes, until the mixture begins to thicken. Add one-third of shredded cheese and stir until completely melted. Remove from heat and stir in the onions and mushrooms, then stir in salt and pepper.
- Prepare the casserole: Place the broccoli in the prepared baking dish and sprinkle with one-third of the shredded cheese. Pour the sauce over the broccoli, then sprinkle with the remaining third of shredded cheese.
- Ritz cracker topping: In a small bowl, combine the Ritz cracker crumbs and melted butter until all of the crumbs are moistened. Sprinkle evenly over the top of the casserole.
- Bake the casserole: In a preheated oven, bake the casserole until the top is golden brown and the sauce is bubbling, 15 to 25 minutes. Remove from oven and let sit 10 minutes before serving.
Fresh Broccoli vs. Frozen Broccoli
We opt to use fresh broccoli over frozen broccoli in this recipe. To pick out a standby heads of broccoli you want to find a head with green florets and firm stalks. Avoid any broccoli with yellowing or browning on the head or stalk.
If you do not have access to fresh broccoli or need to use frozen be sure to thaw and drain the broccoli entirely. Your casserole will be watery and soggy if you use unthawed florets.
Storing, Reheating, and Making Ahead
- Storing – Keep in an airtight container in the refrigerator for up to 3 days.
- Reheating a Single Serving – For a single serving, we recommend reheating the casserole in the microwave. Heat in 30-second intervals until warmed through.
- Reheat the Whole Dish – To reheat the entire casserole, allow to come to room temperature and pop in the oven, covered with foil at 350°F for about 15 minutes or until cooked through.
- Making Ahead – You can make the entire casserole, except for the Ritz cracker topping, one day in advance and cover and refrigerate. Then when you are ready to bake remove it from the refrigerator and bring it to room temperature, top with the buttery cracker topping, and bake!
Freezing Broccoli Casserole
Another great make-ahead option is to freeze the casserole for up to 3 months. To freeze the casserole:
- Prepare the casserole in a freezer-safe and oven-safe container.
- Do not top with the Ritz cracker topping.
- When you are ready to bake, remove from the freezer and let thaw overnight in the refrigerator.
- Before baking, bring to room temperature, top with the ritz cracker topping, and bake.
Other Mix-Ins
If you are looking for ways to add in extra protein, grains, or flavor to this dish you can try adding in any of these mix-ins to shake it up!
We would suggest a substitution ratio of 1:1 meaning remove one cup of broccoli for each cup of mix-in you want to add. This will keep the cheese sauce to filling ratio in check and shouldn’t alter the cooking time.
- Cooked chicken: Cubed or shredded would work evenly, it would also be an excellent use for a rotisserie chicken.
- Rice: Try pre-cooked jasmine rice, brown rice, or cauliflower rice for an extra serving of vegetables.
- Potato: Use pre-cooked potato cut into 1-inch sized pieces.
- Bacon: We would use cooked bacon chopped into bite-sized pieces and mix some with the creamy cheese sauce and then mix the rest into the ritz cracker crumb topping (chef’s kiss).
Make it a Meal!
While we could dig in, fork first to a heaping plate of this broccoli casserole, here are a few main dishes you can make to serve with this comforting casserole.
Broccoli Casserole
With fresh broccoli, a made from scratch white cream sauce, cheese, and a buttery Ritz cracker topping, this comforting Broccoli Casserole has it all! Made to stick to your ribs, feed your soul, and keep you full long after you finish.
Broccoli Casserole (From Scratch!)
Yield: 12 servings Fresh broccoli is smothered in a creamy mushroom cheese sauce and topped with a buttery Ritz cracker topping in this ultra-comforting from-scratch broccoli casserole.- 3 pound (1.36 kg) broccoli florets, cut into bite-size pieces
- 8 tablespoons unsalted butter, divided
- ½ (0.5) medium yellow onion, finely chopped
- 8 ounces (226.8 g) white button mushrooms, finely chopped
- 5 tablespoons all-purpose flour
- 4 cups (976 ml) whole milk
- 1 teaspoon salt
- ½ teaspoon (0.5 teaspoon) freshly ground black pepper
- 8 ounces (226.8 g) sharp cheddar cheese, shredded and divided
For the Topping
- 30 Ritz crackers, crushed
- 2 tablespoons unsalted butter, melted
- Preheat oven to 400 degrees F. Lightly grease a 9x13-inch baking dish; set aside.
- Bring a large pot of water to boil, add the broccoli and boil for 3 to 5 minutes, until still firm, but tender enough that a fork can pierce through. Drain the broccoli in a colander and rinse with cold water.
- In a medium skillet over medium-high heat, melt 3 tablespoons of the butter, then add the onion and mushrooms. Cook, stirring occasionally, until the mushrooms release liquid and it has all evaporated, about 10 minutes. Transfer to a bowl and set aside.
- In a medium saucepan over medium heat, melt the remaining 5 tablespoons of butter, then add the flour and stir until the mixture is lightly browned and has a nutty aroma, 1 to 2 minutes. Slowly begin to add the milk, whisking constantly until all of the milk has been added. Cook for 2 to 3 minutes, until the mixture begins to thicken. Add one-third of the shredded cheese and stir until completely melted. Remove from the heat and stir in the reserved onions and mushrooms, then stir in the salt and pepper.
- Place the broccoli in the prepared baking dish and sprinkle with another one-third of the shredded cheese. Pour the sauce over the broccoli, then sprinkle with the remaining third of the shredded cheese. In a small bowl, combine the Ritz cracker crumbs and melted butter until all of the crumbs are moistened. Sprinkle evenly over the top of the casserole.
- Bake in the preheated oven until the top is golden brown and the sauce is bubbling, 15 to 25 minutes. Remove from the oven and let sit for 10 minutes before serving. Leftovers can be stored in an airtight container in the refrigerator for up to 2 days.
Notes
- Extra Ingredients: Remove 1 cup of broccoli for each cup of an add-in you include. Some ideas: cooked chicken or ham (shredded or cubed), cooked rice, cubed pre-cooked potatoes, cooked and chopped bacon.
- Storing: Keep in an airtight container in the refrigerator for up to 3 days.
- Reheating: For a single serving, heat in the microwave in 30-second intervals until warmed through. To reheat the entire casserole, allow to come to room temperature, cover with foil, and place in a 350°F oven for about 15 minutes or until warmed through.
- Make-Ahead: You can make the entire casserole, except for the Ritz cracker topping, 1 day in advance. Cover and refrigerate; when ready to bake, remove from the refrigerator and bring to room temperature, top with the Ritz cracker topping, and bake.
- Freezing Instructions: Prepare casserole in a freezer-safe and oven-safe container. Do not add the Ritz cracker topping. When ready to bake, thaw in the refrigerator overnight. Before baking, bring to room temperature, add the topping, and bake as directed.
Photography by Lauren Grant.


- Yield: 12 servings
- Prep: 30 minutes
- Cook: 20 minutes
- Total: 50 minutes
Ingredients
- 3 pound ( 1.36 kg ) broccoli florets, cut into bite-size pieces
- 8 tablespoons unsalted butter, divided
- ½ ( 0.5 ) medium yellow onion, finely chopped
- 8 ounces ( 226.8 g ) white button mushrooms, finely chopped
- 5 tablespoons all-purpose flour
- 4 cups ( 976 ml ) whole milk
- 1 teaspoon salt
- ½ teaspoon ( 0.5 teaspoon ) freshly ground black pepper
- 8 ounces ( 226.8 g ) sharp cheddar cheese, shredded and divided
For the Topping
- 30 Ritz crackers, crushed
- 2 tablespoons unsalted butter, melted
Method
- Preheat oven to 400 degrees F. Lightly grease a 9x13-inch baking dish; set aside.
- Bring a large pot of water to boil, add the broccoli and boil for 3 to 5 minutes, until still firm, but tender enough that a fork can pierce through. Drain the broccoli in a colander and rinse with cold water.
- In a medium skillet over medium-high heat, melt 3 tablespoons of the butter, then add the onion and mushrooms. Cook, stirring occasionally, until the mushrooms release liquid and it has all evaporated, about 10 minutes. Transfer to a bowl and set aside.
- In a medium saucepan over medium heat, melt the remaining 5 tablespoons of butter, then add the flour and stir until the mixture is lightly browned and has a nutty aroma, 1 to 2 minutes. Slowly begin to add the milk, whisking constantly until all of the milk has been added. Cook for 2 to 3 minutes, until the mixture begins to thicken. Add one-third of the shredded cheese and stir until completely melted. Remove from the heat and stir in the reserved onions and mushrooms, then stir in the salt and pepper.
- Place the broccoli in the prepared baking dish and sprinkle with another one-third of the shredded cheese. Pour the sauce over the broccoli, then sprinkle with the remaining third of the shredded cheese. In a small bowl, combine the Ritz cracker crumbs and melted butter until all of the crumbs are moistened. Sprinkle evenly over the top of the casserole.
- Bake in the preheated oven until the top is golden brown and the sauce is bubbling, 15 to 25 minutes. Remove from the oven and let sit for 10 minutes before serving. Leftovers can be stored in an airtight container in the refrigerator for up to 2 days.
Notes
Extra Ingredients: Remove 1 cup of broccoli for each cup of an add-in you include. Some ideas: cooked chicken or ham (shredded or cubed), cooked rice, cubed pre-cooked potatoes, cooked and chopped bacon.
Storing: Keep in an airtight container in the refrigerator for up to 3 days.
Reheating: For a single serving, heat in the microwave in 30-second intervals until warmed through. To reheat the entire casserole, allow to come to room temperature, cover with foil, and place in a 350°F oven for about 15 minutes or until warmed through.
Make-Ahead: You can make the entire casserole, except for the Ritz cracker topping, 1 day in advance. Cover and refrigerate; when ready to bake, remove from the refrigerator and bring to room temperature, top with the Ritz cracker topping, and bake.
Freezing Instructions: Prepare casserole in a freezer-safe and oven-safe container. Do not add the Ritz cracker topping. When ready to bake, thaw in the refrigerator overnight. Before baking, bring to room temperature, add the topping, and bake as directed.
Photography by Lauren Grant.








