
Green bean casserole with crispy shallots is the kind of side dish that earns a permanent place on the holiday table. Tender green beans are coated in a rich, creamy mushroom sauce, then finished with golden, crunchy shallots for a combination of textures that is hard to resist.
Best of all, much of the recipe can be prepared ahead of time.
That makes this homemade green bean casserole an excellent choice for Thanksgiving, Christmas dinner, or any meal where you want an impressive vegetable side without unnecessary last-minute work.
Ingredients for Green Bean Casserole with Crispy Shallots
For the best results, use fresh ingredients and season each component as you go.
For the green beans
- 1 1/2 pounds fresh green beans, trimmed
- Salt, for blanching and seasoning
- Ice water, for cooling the beans
For the creamy mushroom sauce
- 2 tablespoons butter
- 8 ounces mushrooms, thinly sliced
- 2 cloves garlic, finely minced
- 2 tablespoons all-purpose flour
- 1 1/2 cups whole milk
- 1/2 cup heavy cream
- 1 teaspoon fresh thyme leaves, or 1/2 teaspoon dried thyme
- 1/2 teaspoon salt, plus more to taste
- 1/4 teaspoon freshly ground black pepper
For the crispy shallots
- 3 to 4 large shallots, thinly sliced
- 1/2 cup all-purpose flour
- 1/2 teaspoon salt
- Neutral oil, for frying
You can also add a small amount of Parmesan cheese, fresh parsley, or extra thyme if you want to give the casserole another layer of flavor.
How to Make Crispy Shallots from Scratch
Crispy shallots are what make this green bean casserole especially memorable. The key is slicing them thinly and evenly so that they cook at roughly the same rate.
Start by peeling the shallots and slicing them into very thin rings. Separate the rings with your fingers.
Place the flour and salt in a shallow bowl. Toss the shallots in the flour mixture, making sure they are lightly coated. Shake off any excess flour.
Heat enough neutral oil to generously cover the bottom of a skillet or saucepan. The oil should be hot enough to make the shallots sizzle immediately, but not so hot that they darken rapidly.
Fry the shallots in batches. Overcrowding the pan can cause the temperature of the oil to drop, resulting in greasy rather than crisp shallots.
Cook them until golden brown, stirring gently as necessary. Remember that shallots continue to darken slightly after they are removed from the oil, so take them out when they are golden rather than deeply brown.
Transfer them to a paper towel-lined plate and let them drain. Season with a little additional salt while they are still warm.
For the crispiest result, allow the shallots to cool completely before adding them to the casserole.
Prepare the Fresh Green Beans
Bring a large pot of salted water to a boil. Add the trimmed green beans and blanch them for several minutes, just until they become bright green and slightly tender.
The beans should not be completely soft at this stage. They will continue cooking in the oven.
Immediately transfer the green beans to a large bowl of ice water. This stops the cooking process and helps preserve their vibrant color.
After a few minutes, drain the beans thoroughly. Pat them dry with a clean kitchen towel or paper towels.
Removing excess water is important. Too much moisture can thin the mushroom sauce and leave you with a watery casserole.
Make the Creamy Mushroom Sauce
Melt the butter in a large skillet over medium heat. Add the sliced mushrooms and cook until they soften and release their moisture.
Continue cooking until most of the liquid has evaporated and the mushrooms begin to develop some golden-brown color. This step is worth taking your time with because well-browned mushrooms add significantly more flavor.
Add the minced garlic and cook for about 30 seconds, just until fragrant.
Sprinkle the flour over the mushrooms and stir well. Cook for another minute to remove the raw flour taste.
Slowly pour in the milk while whisking continuously. Add the cream and continue stirring until the sauce begins to thicken.
Add the thyme, salt, and black pepper. Taste the sauce and adjust the seasoning as needed.
The finished sauce should be creamy and thick enough to coat the green beans without being stiff. If it becomes too thick, add a small splash of milk.
Assemble the Green Bean Casserole
Preheat the oven to 375°F (190°C).
Place the blanched and thoroughly drained green beans in a large bowl. Pour the creamy mushroom sauce over them and gently toss until the beans are evenly coated.
Transfer the mixture to a lightly greased baking dish. Spread it into an even layer.
At this point, resist the temptation to add all of the crispy shallots. For the best texture, keep the majority of the topping for later in the baking process.
Cover the casserole loosely with foil and bake for about 20 minutes.
Remove the foil and continue baking for another 10 minutes, or until the sauce is bubbling around the edges and the casserole is heated through.
Scatter the crispy shallots generously over the top during the final few minutes of baking. This helps them stay crisp instead of becoming soft in the creamy sauce.
Let the casserole rest for approximately five minutes before serving.

Easy Variations and Substitutions
One of the advantages of homemade green bean casserole is how easy it is to customize.
Add cheese
A little grated Parmesan can add a nutty, savory flavor to the mushroom sauce. Gruyère or sharp cheddar can also work if you prefer a richer casserole.
Add bacon
For a smoky variation, cook chopped bacon until crisp and stir some into the mushroom mixture. You can reserve additional bacon for the topping.
Use different mushrooms
Cremini mushrooms are an excellent everyday choice, but a mixture of cremini, shiitake, or other flavorful mushrooms can make the sauce more complex.
Make it vegetarian
The recipe is naturally vegetarian as long as you use vegetable stock if stock is added to the sauce. Check individual ingredients if you’re preparing the dish for someone with specific dietary requirements.
Make it gluten-free
Use a gluten-free all-purpose flour blend for the sauce and a suitable gluten-free coating for the crispy shallots.
What to Serve with Green Bean Casserole
This casserole is especially well suited to hearty holiday meals.
Serve it alongside roast turkey, roast chicken, glazed ham, or roast beef. It also pairs naturally with classic sides such as mashed potatoes, stuffing, cranberry sauce, roasted carrots, and gravy.
Because the casserole combines vegetables with a rich cream sauce, it can also be used to add freshness and color to an otherwise heavy dinner.
And you don’t have to save it for Thanksgiving. Green bean casserole makes a satisfying side dish for Sunday dinner or a family gathering throughout the year.
Recipe FAQ’s
Can I use frozen green beans?
Yes. Frozen green beans are a convenient alternative to fresh. Thaw them completely and drain away as much excess water as possible before combining them with the sauce.
Can I prepare crispy shallots ahead of time?
Yes. Crispy shallots can be prepared ahead and stored in an airtight container at room temperature. Keeping them separate from the casserole until serving helps maintain their crunch.
Can I freeze green bean casserole?
The casserole can technically be frozen, but the texture of the green beans and creamy sauce may change after thawing. For the best results, prepare the components fresh whenever possible.

Creamy Green Bean Casserole with Crispy Shallots
Ingredients
For the Green Beans
- 1 ½ pounds fresh green beans trimmed
- 1 tablespoon salt for the blanching water
- 4 cups ice water
For the Creamy Mushroom Sauce
- 2 tablespoons butter
- 8 ounces mushrooms thinly sliced
- 2 cloves garlic finely minced
- 2 tablespoons all-purpose flour
- 1 ½ cups whole milk
- ½ cup heavy cream
- 1 teaspoon fresh thyme leaves
- ½ teaspoon salt
- ¼ teaspoon freshly ground black pepper
For the Crispy Shallots
- 3 to 4 large shallots thinly sliced
- ½ cup all-purpose flour
- ½ teaspoon salt
- 1 cup neutral oil for frying
Instructions
Prepare the green beans
- Trim the ends from the green beans. Bring a large pot of salted water to a boil.
- Add the green beans and blanch for about 3 to 4 minutes, until they are bright green and just tender. Do not overcook them.
- Immediately transfer the green beans to a bowl of ice water. Let them cool for several minutes, then drain thoroughly and pat dry with paper towels.
Prepare the crispy shallots
- Peel the shallots and slice them very thinly into rings. Separate the rings with your fingers.
- Place the flour and salt in a shallow bowl. Add the sliced shallots and toss until they are lightly coated. Shake off any excess flour.
- Heat the neutral oil in a skillet or saucepan over medium-high heat.
- Working in batches, fry the shallots until golden brown and crisp, stirring gently as they cook. This should take approximately 2 to 4 minutes per batch.
- Transfer the crispy shallots to a paper towel-lined plate to drain. Allow them to cool and crisp completely.
Cook the mushrooms
- Preheat the oven to 375°F (190°C).
- Melt the butter in a large skillet over medium heat. Add the sliced mushrooms and cook for approximately 6 to 8 minutes, stirring occasionally.
- Continue cooking until the mushrooms have released their moisture and are beginning to brown.
- Add the minced garlic and cook for about 30 seconds, until fragrant.
Make the creamy sauce
- Sprinkle the flour over the mushrooms and stir well. Cook for approximately 1 minute.
- Gradually whisk in the milk, followed by the heavy cream. Continue stirring until the sauce thickens and becomes smooth and creamy.
- Add the thyme, salt, and black pepper. Taste and adjust the seasoning if necessary.
Combine the green beans and sauce
- Add the drained green beans to the mushroom sauce and gently toss until they are evenly coated.
- Transfer the mixture to a lightly greased baking dish and spread it into an even layer.
Bake the casserole
- Cover the baking dish loosely with aluminum foil and bake for approximately 20 minutes.
- Remove the foil and continue baking for another 10 minutes, or until the casserole is hot and bubbling around the edges.
Add the crispy shallots
- Remove the casserole from the oven and generously scatter the crispy shallots over the top.
- Return the casserole to the oven for approximately 3 to 5 minutes, just to warm the topping without allowing the shallots to burn.
Rest and serve
- Remove the casserole from the oven and let it rest for about 5 minutes.
- Serve warm, with additional fresh thyme or parsley if desired.
