This post may contain affiliate links. Please read our disclosure policy.
Green beans, Brussels sprouts, bacon, and homemade Parmesan-shallot cream sauce make this truly the best Green Bean Casserole ever! A crispy topping and bacon add the perfect traditional touch.

Easy Green Bean Casserole Recipe
This green bean casserole recipe is my upgraded twist on the classic holiday side dish. Fresh green beans, smoky bacon, and tender Brussels sprouts are baked in a rich homemade Parmesan cream sauce with mushrooms and shallots. No canned soup needed. It’s creamy, savory, and packed with real flavor.
If you’re looking for a make-ahead Thanksgiving side, this green bean casserole checks every box. You can prep it in advance, assemble it in one pan, and bake it when you’re ready. It’s the perfect dish for Thanksgiving, Christmas, potlucks, or any cozy family dinner where you want something crowd-pleasing, hearty, and a little bit indulgent.

Recipe Ingredients
You’ll notice that I use frozen green beans here because they just make things faster and easier, and cook up just as bright and beautiful as fresh. But if you’d like to substitute fresh, that’s fine, too.
- Bacon: Using a sharp knife, dice up the bacon slices into small pieces.
- Brussels Sprouts: The Brussels sprouts should have the root ends trimmed short, and any discolored outer leaves discarded. From there, cut them into quarters.
- Green Beans: I prefer French-cut green beans, but regular cut green beans are also fine. They should be thawed and well-drained in a colander so they don’t make the dish watery.
- Butter: I use a whole stick of butter, divided. Salted or unsalted, either is fine!
- Shallot: Don’t skip the shallot! Shallot helps give green bean casserole its classic flavor. Chop it finely or mince it.
- Mushrooms: You can use crimini mushrooms, button mushrooms, or whatever mushrooms you like! Slice them roughly to match the size of the quartered Brussels sprouts.
- Flour: A small amount of all-purpose flour thickens the sauce.
- Milk: Whole milk is my go-to, but if you wish, you can substitute non-dairy milk in this recipe. The texture and taste will be slightly different in that case.
- Parmesan Cheese: A generous amount of Parmesan makes the sauce thick and strong flavored, with deep umami notes.
- Salt and Black Pepper
- Breadcrumbs or Fried Onions: Store-bought fried onions add that essential green bean casserole finish. You could also make your own fried onions, if you prefer! Get this homemade fried onions recipe from Diethood.
How to Make Green Bean Casserole from Scratch
This recipe has several components, but you only need a baking dish and a Dutch oven (or a large pot) to make them! Almost everything gets a quick precook in the pot, before going into the baking dish and then the oven, to let the flavors meld together.


- Prep. Preheat the oven to 350˚F. Lightly grease a 9×13 baking dish with butter, and set it aside.
- Cook the bacon and veggies. Set a Dutch oven (or a large, heavy pot) over medium heat. Add the diced bacon, and cook it until it’s crispy. Then use a slotted spoon to remove the cooked bacon from the pot, and set it aside. Add the Brussels sprouts and thawed green beans to the bacon grease in the pot. Saute them gently for about 6 to 8 minutes, or until crisp-tender. NOTE: Get smaller sized Brussels sprouts so they cook up faster.
- Cook the mushrooms and shallots. Remove the cooked Brussels sprouts and green beans from the pot, and set them aside. Add a couple of tablespoons of butter to the pot and turn the heat up to medium-high. Cook the shallots and mushrooms in the melted pot, stirring often, until the mushrooms are browned and the shallots are caramelized. This should take 8 – 10 minutes.
- Make the sauce. Transfer the cooked shallots and mushrooms to the baking dish, and set aside. Add the remaining butter to the pot and let it melt. Stir the flour into the melted butter and cook for a minute or so, whisking the whole time to prevent scorching and remove any lumps. Next, whisk in the milk. Keep whisking the mixture for a few minutes, until it’s thickened and bubbly. Turn the heat off, and then stir in the Parmesan, salt, and pepper.
- Assemble the casserole and bake. Stir the sauce into the Brussels sprouts, green beans, mushrooms, and shallots. Transfer the casserole to the oven and bake for 15 minutes.
- Add the topping. Take the casserole out of the oven for a moment, sprinkling it with the crispy bacon pieces and the breadcrumbs or fried onions. Bake again, for another 15 minutes or so, until golden brown.
- Enjoy! Let the green bean casserole stand for 10 minutes or so before tasting for seasonings, adjusting as needed, and serving warm.

Tips for Success
Everyone has their favorite “secrets” for making a good green bean casserole, but I’m happy to share mine with you! Here are some important pointers for making sure your casserole turns out creamy, crunchy, and perfect.
- Don’t overcook the vegetables: Be careful not to overdo it when cooking the Brussels sprouts and green beans. They should still be slightly crisp when you put them in the casserole, so they won’t be mushy when done baking.
- Cook the mushrooms thoroughly: When you cook mushrooms, it can take some time for them to exude all of their water and then begin to brown. Be patient, and trust the process. If you stop cooking them too soon, they’ll continue to exude water while baking. That will make your casserole watery.
- Substitute toppings: If you’re not crazy about fried onions, this casserole is also wonderful topped with homemade breadcrumbs, crushed butter crackers, or Panko. I use these pork rind crumbs – they are SO good!
What to Serve with Green Bean Casserole
This dish goes perfectly with other holiday classics, from turkey to cranberry sauce. Try some of these favorite, cozy, holiday dishes. They’re easy to make, and scrumptious to eat, and go perfectly with green bean casserole.
- Glazed Carrots: These simple honey balsamic roasted carrots are pretty to look at, deeply tangy, and lusciously sweet.
- Roast Turkey: A juicy whole roast turkey makes an impressive (and tasty!) main course, and even more so when served with this savory casserole.
- Potatoes: Golden-brown and ultra-cheesy scalloped potatoes are a hearty, indulgent side dish perfect for any occasion.
Make-Ahead Instructions
Green bean casserole is perfect for making ahead! All you have to do is prepare the casserole up to the point of baking, but then store it, tightly wrapped, instead of baking it. The topping should be stored separately so it doesn’t soften.
Store in the fridge for up to 2 days, or the freezer for up to 3 months.
To bake after storing, add an additional 15 – 30 minutes to the initial bake time, making sure that the casserole is hot and bubbly. From there, add the toppings, and bake 15 minutes longer. Let stand 10 minutes before serving.

How to Store and Reheat Leftovers
- To refrigerate leftover green bean casserole, store it in an airtight container, or cover the casserole dish tightly with plastic wrap. It will keep for up to 3 days in the fridge.
- To freeze, place the green bean casserole in shallow, airtight containers and freeze for up to 3 months. Thaw in the refrigerator before reheating.
- To reheat, place in an oven-safe dish and bake at 350˚F until heated through.

The Best Green Bean Casserole Recipe
Ingredients
- 6 slices bacon, diced
- 1 pound Brussels sprouts, trimmed and quartered (get smaller sized brussel sprouts)
- 2 packages (15 ounces each) cut green beans, thawed (you can use fresh green beans, if you prefer)
- 8 tablespoons butter, divided
- 1 large shallot, chopped
- 8 ounces sliced mushrooms
- 6 tablespoons all purpose flour
- 4 cups milk
- 1½ cups shredded Parmesan cheese
- salt and freshly ground black pepper, to taste
- breadcrumbs, for topping, optional
- crispy fried onions, for topping, optional
Instructions
- Prep. Preheat the oven to 350˚F. Lightly grease a 9×13 baking dish with butter and set aside.
- Cook the bacon. Add the diced bacon to a Dutch oven or large skillet set over medium heat and cook to a desired crispiness. Using a slotted spoon, transfer the cooked bacon from the pot to a plate and set it aside. Do not drain the bacon grease from the skillet.
- Cook the veggies. To the bacon grease, add the Brussels sprouts and thawed green beans; season with salt and pepper, and cook for about 6 to 8 minutes, or until tender. Remove the vegetables from the pot and transfer them to the baking dish; set aside.
- Cook the mushrooms and shallots. Add 2 tablespoons of butter to the pot and set it over medium-high heat. Stir in the shallots and mushrooms; cook and stir often for about 8 minutes, or until mushrooms are browned and shallots are caramelized. Transfer them to the baking dish. Set aside.
- Make the cream sauce. To the same skillet/pot, add the remaining butter; melt it over medium-high heat. Whisk in the flour and cook for 1 minute while constantly whisking. Whisk in the milk until smooth. Continue to whisk for 3 to 4 minutes, or until the mixture is thickened and bubbly. Remove from heat. Add the Parmesan cheese, salt, and pepper, and whisk until well combined.
- Combine and bake. Pour the cream sauce over the green beans mixture and stir until completely combined. Transfer the baking dish to the oven and bake, uncovered, for 15 minutes.
- Add the toppings. Remove the casserole from the oven and sprinkle with previously cooked bacon pieces and breadcrumbs, or fried onions. Return to the oven and continue baking for 15 minutes, or until the top is golden brown.
- Finish and serve. Remove the green bean casserole from the oven and let it stand for 10 minutes. Taste for salt and pepper, and adjust accordingly. Serve.
Nutrition
Nutritional info is an estimate and provided as courtesy. Values may vary according to the ingredients and tools used. Please use your preferred nutritional calculator for more detailed info.














Oh, wow! I’ve never seen green bean casserole done like this before. This is going to be perfect on our Christmas table.
Thank you so much! I hope you’ll enjoy it! ๐
Such a perfect casserole! Thanks for sharing this recipe! So good and delish!
I’m very glad you enjoyed it! Thank YOU! ๐