Some may disagree but green bean casserole is my all time favorite Thanksgiving side dish but I've never been a fan of canned mushroom soup. Aside from the french fried onions, this fresh green bean casserole is made completely from scratch with fresh ingredients for the best flavor and texture!
Why This is the Best Green Bean Casserole!
While the classic Thanksgiving green bean casserole is delicious, this fresh green bean casserole is made from scratch for an even more flavorful and slightly healthier option!
- Uses fresh green beans for the best flavor and crunch (no mushy beans here)!
- NO canned soup here! Just an easy, delicious homemade mushroom sauce!
- Super light, fresh, and not as heavy as most casseroles so that you can even more!
- Can be prepped up to 48 hours in advance and only needs 30 minutes to bake!
You just need a few ingredients to make this fresh green bean casserole from scratch!
- Green Beans - Any green beans will work in this recipe, but I prefer haricot verts (French green beans). They are slimmer, more tender, and have the best flavor! You can usually find them at Trader Joe's or Whole Foods! If you don't want to use fresh green beans, frozen are the best alternative but they won't be as crisp.
- Mushrooms - Instead of cream of mushroom soup, I like to use fresh sliced cremini mushrooms! But you could also use Portobello mushrooms, shiitakes, or just leave out the mushrooms all together.
- Shallot and Garlic - Sautéed shallots and garlic add just the right amount of flavor! But you could also use a small yellow onion instead.
- Vegetable Stock - I always use homemade vegetable stock because that's what I have on hand. But you can also use store-bought vegetable stock or chicken stock! Just note, if using store-bought stock you may need to reduce the salt content of the sauce.
- Heavy Cream - You can substitute half & half or whole milk for a lighter sauce if you prefer
- Dijon Mustard - This is optional, but adds some great extra flavor to the sauce.
- Nutmeg - Just a small amount of nutmeg helps to enhance the earthy flavors of the mushrooms!
- Cayenne Pepper - I love adding just a little bit of cayenne for some added flavor and heat! But just leave it out if you prefer.
- French's Fried Onions - Confession: I love eating french fried onions straight out of the can! They're my favorite topping for green bean casserole! But I also love making my own crispy fried onions for when I want this casserole to be 100% from scratch.
Variations and Substitutions
- Add some crispy bacon bits to the sauce!
- For a cheesy casserole, add in 1 cup of cheese! White cheddar, parmesan, or gruyere are all yummy options!
- For a lighter sauce, use whole milk instead of cream.
- Instead of sliced mushrooms, you can finely dice the mushrooms for a different texture.
- Top with buttery panko breadcrumbs instead of fried onions.
How to Make Green Bean Casserole
Bring a large pot of salted water to a rolling boil. Fill a large bowl with ice and cover with with water. Set aside.
Drop the green beans into the boiling water and blanch for 2 minutes.
Remove the beans and immediately immerse in the ice bath for about 20 seconds. Drain and pat dry.
In a large skillet, melt the butter over medium heat and sauté the shallot, garlic, and mushrooms until soft, aromatic, and just beginning to brown.
Stir in the flour to create a roux, and let cook for 1-2 minutes. Then stir in the vegetable stock and continue to stir until thickened slightly.
Then stir in the Dijon, herbs, and spices.
Reduce the heat to low, then slowly whisk in the cream and continue to gently cook until the sauce is thick enough to coat the back of a spoon.
Remove from the heat and toss the blanched green beans in the sauce until fully coated.
Transfer to a baking dish and bake uncovered at 375°F for 20 minutes.
If desired, top with french fried onions and bake for another 10 minutes.
Technically no, but you should! Blanching the green beans keeps them nice and crisp and helps maintain that vibrant green color.
This casserole will last in the fridge for up to 4 days! Just note that the french fried onions will get soggy over time. So you can top with new ones are crisp them up slightly under the broiler.
Yes! Prep everything and place it in the casserole dish, then cover and refrigerate for up to 2 days. When you're ready to bake, remove from the fridge and let sit at room temperature for at least 30 minutes before baking (this ensures the casserole is fully cooked in the middle and also protects your casserole dish from cracking due to temperature change). Then bake and top with french fried onions as normal!
Cover with foil and reheat in the oven at 350°F for about 20 minutes. Add on extra french fried onions if desired! You can also reheat individual portions in the microwave if desired.
Tips for Success!
For best results I always recommend using weight measurements (especially when baking) because it's the most accurate. Kitchen scales are super affordable and also reduce the number of dishes you have to do! However, all my recipes also include US customary measurements for convince. Use this chart to convert measurements for common ingredients!
Substitutions: In all my recipes, I've included substitutions that I know will work, but I cannot guarantee results if you substitute ingredients that I have not recommended. For example, granulated sugar and honey are indeed both sweeteners but they have different properties so that can not always be swapped 1:1. In the recipe card you'll find links to the specific ingredients/brands that I use.
A note on salt: I almost exclusively use Diamond Crystal Kosher Salt because it's the best all-purpose salt for cooking and baking. If you're not using kosher salt, consult this handy guide for a conversion chart! When in doubt, if you're using table salt just reduce the amount by half for baked goods. When cooking, I prefer to under-salt because you can always add more! If you've over-salted, adding a little bit of acid (like lemon juice) can help.
More Thanksgiving Recipes You Might Like!
If you make this recipe, please leave a star rating at the bottom of the page! This provides helpful feedback to both me and other readers. And if you want more delicious, scratch-made recipes you can subscribe to my newsletter and follow along on Instagram, Pinterest, and Facebook!
Fresh Green Bean Casserole from Scratch
- 2 pounds fresh green beans
- 2 tablespoons unsalted butter
- 1 large shallot, sliced
- 2 cloves garlic, sliced
- 8 ounces cremini mushrooms, optional
- 2 tablespoons all purpose flour
- ½ cup vegetable stock
- 1 teaspoon Dijon mustard
- 2 teaspoons fresh thyme
- ½ teaspoon kosher salt, more to taste
- ½ teaspoon black pepper
- ¼ teaspoon nutmeg
- ¼ teaspoon cayenne, optional
- 1 cup heavy cream
- 1 cup french fried onions, optional
- If desired, you can trim the ends of the green beans and cut into smaller bite-sized pieces.
- Bring a large pot of salted water to a rolling boil.
- Fill a large bowl with ice and cover with with water. Set aside.
- Drop the green beans into the boiling water and blanch for 2 minutes.
- Remove the beans and immediately immerse in the ice bath for about 20 seconds. Drain and pat dry.
- Notes: Do NOT leave the beans in the water as they will get soggy. If you’re making this recipe for a holiday meal, you can blanch the beans up to a day in advance!
Green Bean Casserole
- In a large skillet, melt the butter over medium heat and sauté the shallot, garlic, and mushrooms until soft, aromatic, and just beginning to brown.
- Stir in the flour to create a roux, and let cook for 1-2 minutes. Then stir in the vegetable stock and continue to stir until thickened slightly.
- Then stir in the Dijon, herbs, and spices.
- Reduce the heat to low, then slowly whisk in the cream and continue to gently cook until the sauce is thick enough to coat the back of a spoon.
- Taste and adjust seasonings if desired.
- Remove from the heat and toss the blanched green beans in the sauce until fully coated.
- Transfer to a baking dish and bake uncovered at 375°F for 20 minutes.
- If desired, top with french fried onions and bake for another 10 minutes.
The nutritional information on this website is only an estimate and is provided for convenience and as a courtesy only. The accuracy of the nutritional information for any recipe on this site is not guaranteed.