Written by

Harmony Rich

Published

Classic Green Bean Casserole from Scratch – Easy & Best

Ready In 60 minutes
Servings 8 servings
Difficulty Medium

Love this? Save it for later!

Share the inspiration with your friends

Linda wasn’t trying to impress anyone. I’d stopped by her house that Tuesday to pick up a book I’d lent her—some novel I’d forgotten about months ago—and the smell hit me before I even got through the front door. It was rich, savory, with something toasty and almost sweet underneath. She was standing in her kitchen in sweatpants and an old t-shirt, stirring a pot like it was nothing. “Oh, I’m just testing out a green bean casserole for Thanksgiving,” she said, shrugging. “My sister’s family is coming early this year.” She didn’t even look up. But I was already hooked, honestly. That moment—the casualness of it all—is exactly why this recipe stuck with me. It wasn’t a performance. It was just someone making something good because she needed to feed people she loved.

So I stood there, leaning against her counter, watching her work. She wasn’t using any canned soup or those sad, crunchy onions from a can. She was making everything from scratch—a creamy mushroom sauce, fresh green beans, and these paper-thin shallots that she fried until they turned golden and shattery. “It’s really not a big deal,” she said when I asked about it. But let me tell you, that first bite was a revelation. The sauce was velvety and rich, the beans were tender but still had some bite, and those shallots—crispy, salty, and almost caramelized—made everything else look like an afterthought. I mean, I’ve had green bean casserole at a hundred potlucks, and it’s always been fine, you know? Fine. This was different. This was the kind of dish that makes you close your eyes after the first bite. Maybe you’ve been there—that moment when a simple side dish steals the whole show. That’s what this is.

I asked for the recipe, of course. Linda laughed and scribbled it down on the back of an envelope. It was messy, with crossed-out measurements and notes like “don’t skip the nutmeg” in the margins. And that’s the version I’ve been making ever since—imperfect, handwritten, and absolutely perfect. This Classic Green Bean Casserole from Scratch with Crispy Shallots is the one I bring to every holiday dinner, every potluck, every Tuesday night when I need something that feels special without all the fuss. It’s the kind of recipe that makes you look like you tried really hard when really, you just followed someone’s scribbled notes from an old envelope. And honestly? That’s the best kind of recipe to have in your back pocket.

Why You’ll Love This Recipe

This isn’t your grandma’s green bean casserole—well, actually, it might be, if your grandma was the kind of cook who refused to use shortcuts. But for the rest of us, this version is a game-changer. I’ve tested this recipe at least a dozen times, tweaking the sauce consistency, the shallot thickness, the roasting time. And I can tell you with full confidence: this is the best version. Here’s why you’re going to love it:

  • Quick & Easy: Despite being from scratch, this comes together in under an hour. Perfect for busy weeknights or when you’re juggling a dozen holiday dishes.
  • Simple Ingredients: No canned soup, no mystery ingredients. Just fresh green beans, mushrooms, cream, and shallots—stuff you can find at any grocery store.
  • Perfect for Holidays & Potlucks: This dish is a showstopper at Thanksgiving, Christmas, Easter, or any gathering where comfort food is welcome.
  • Crowd-Pleaser: I’ve served this to picky kids, vegetarian friends, and serious foodies. Every single person goes back for seconds.
  • Unbelievably Delicious: The creamy mushroom sauce, the tender-crisp beans, the crispy shallots on top—it’s next-level comfort food that tastes like you spent hours in the kitchen.

What makes this recipe different from every other green bean casserole out there? It’s the technique. Instead of a gloppy, one-note sauce, we’re building layers of flavor—sautéed mushrooms, a touch of nutmeg, a splash of white wine, and a roux that gives the sauce body without being heavy. The crispy shallots aren’t an afterthought; they’re the crown jewel, fried to perfection and scattered on top like little golden treasures. This isn’t just another version of green bean casserole. It’s the one you’ll want to make for the rest of your life.

Honestly, this recipe makes me feel like I’ve got a secret weapon. It’s the dish that people ask for by name. “Are you bringing that green bean thing?” my brother-in-law texts me every November. And I love that—the way a simple side dish can become a tradition, a signature, a little piece of edible love that you share with the people around your table.

What Ingredients You Will Need

This recipe uses simple, wholesome ingredients to deliver bold flavor and satisfying texture without the fuss. Most of these are pantry staples or easy to find at any grocery store. I’ve tested this with different brands and substitutions, so I’ll share what works best.

For the Crispy Shallots

  • 3 large shallots, thinly sliced into rings (about 1 cup sliced) — look for firm, dry shallots without any green sprouts
  • 1/2 cup all-purpose flour — for coating; you can use rice flour for a gluten-free option
  • 1/2 teaspoon salt — fine sea salt works best
  • 1/4 teaspoon black pepper — freshly ground, please
  • 1 cup vegetable oil — or any neutral oil with a high smoke point like canola or grapeseed

For the Green Beans

green bean casserole from scratch preparation steps

  • 1 1/2 pounds fresh green beans, trimmed and cut into 2-inch pieces — look for bright, firm beans that snap when you bend them
  • 1 tablespoon salt — for the blanching water
  • Ice water bath — to stop the cooking and keep that vibrant green color

For the Creamy Mushroom Sauce

  • 2 tablespoons unsalted butter — I prefer Kerrygold for its rich flavor, but any good butter works
  • 8 ounces cremini mushrooms, thinly sliced — baby bellas have more flavor than white button mushrooms
  • 1 medium yellow onion, finely diced (about 1 cup)
  • 3 cloves garlic, minced — fresh, not the jarred stuff
  • 1/4 cup all-purpose flour — this thickens the sauce
  • 1 1/2 cups whole milk — or half-and-half for an even richer sauce
  • 1/2 cup heavy cream — don’t skimp here; it makes the sauce luscious
  • 1/2 teaspoon salt, plus more to taste
  • 1/4 teaspoon black pepper
  • 1/4 teaspoon ground nutmeg — this is the secret ingredient that makes everything sing
  • 1/4 cup dry white wine — optional, but it adds depth; use a Sauvignon Blanc or Pinot Grigio
  • 1/2 cup grated Parmesan cheese — optional, for a savory umami boost (I add it every time)

For the Topping

  • 1/2 cup panko breadcrumbs — they stay crunchier than regular breadcrumbs
  • 2 tablespoons unsalted butter, melted
  • 1/4 cup grated Parmesan cheese
  • Reserved crispy shallots — about half of what you made

Ingredient Tips: For the green beans, I recommend getting them from a farmers’ market if you can—they’re usually fresher and more flavorful. If you’re using frozen green beans, thaw them completely and pat them dry before blanching. For the mushrooms, cremini are my go-to, but you can use shiitake for a more earthy flavor or white button mushrooms if that’s what you have. And don’t skip the nutmeg—I know it sounds weird, but it adds this warm, almost sweet note that ties everything together. Trust me on this one.

Equipment Needed

You don’t need a fancy kitchen to make this casserole, but a few key tools will make your life easier:

  • Large pot — for blanching the green beans (at least 4 quarts)
  • Large skillet or Dutch oven — for making the sauce; I love my Lodge cast iron skillet for this
  • Small saucepan — for frying the shallots
  • 9×13-inch baking dish — or a 2-quart casserole dish
  • Slotted spoon — for removing the shallots from the oil
  • Paper towels — for draining the fried shallots
  • Chef’s knife and cutting board — a sharp knife makes slicing shallots so much easier
  • Measuring cups and spoons
  • Whisk — for the sauce, to prevent lumps
  • Mixing bowls

If you don’t have a Dutch oven, a deep skillet works fine. For the shallots, a small saucepan is actually better than a big one—it uses less oil and gives you better control over the temperature. And if you don’t have a slotted spoon, a spider strainer or even tongs will work. I’ve made this in a friend’s tiny apartment kitchen with mismatched tools, and it still turned out amazing. Don’t overthink the equipment.

Preparation Method

  1. Make the crispy shallots first. Heat 1 cup of vegetable oil in a small saucepan over medium heat. While it’s heating, toss the sliced shallots with flour, salt, and pepper in a bowl until they’re evenly coated. Shake off any excess flour—you want a light coating, not a thick crust. When the oil is hot (around 350°F—a pinch of flour should sizzle immediately), add the shallots in batches. Don’t crowd the pan. Fry for 2-3 minutes, stirring occasionally, until they’re golden brown and crispy. Use a slotted spoon to transfer them to a paper towel-lined plate. Sprinkle with a little extra salt while they’re still warm. Set aside. This takes about 10 minutes total, and your kitchen will smell incredible.
  2. Blanch the green beans. Bring a large pot of water to a boil and add 1 tablespoon of salt. While it’s heating, fill a large bowl with ice water and set it nearby. Add the green beans to the boiling water and cook for exactly 3 minutes—set a timer. You want them tender but still bright green and crisp. Immediately transfer them to the ice water bath using a slotted spoon or spider strainer. Let them sit for 2-3 minutes, then drain well. Pat them dry with a clean kitchen towel. This step is crucial—it stops the cooking and locks in that beautiful color. (I learned this the hard way after serving sad, olive-green beans one Thanksgiving.)
  3. Preheat your oven. Set it to 375°F (190°C). While it’s heating, you can start the sauce.
  4. Sauté the mushrooms and onions. In a large skillet or Dutch oven, melt 2 tablespoons of butter over medium-high heat. Add the sliced mushrooms and cook for 5-6 minutes, stirring occasionally, until they release their liquid and start to brown. Don’t stir too much—you want them to get some color. Add the diced onion and cook for another 3-4 minutes until softened. Add the minced garlic and cook for 30 seconds until fragrant. If you’re using the white wine, pour it in now and let it cook for 1-2 minutes, scraping up any browned bits from the bottom of the pan.
  5. Make the roux. Sprinkle the 1/4 cup of flour over the mushroom mixture and stir constantly for 1-2 minutes. This cooks out the raw flour taste and starts the thickening process. The mixture will look thick and pasty—that’s exactly what you want.
  6. Add the dairy. Slowly pour in the milk while whisking constantly. Keep whisking until the sauce is smooth and starts to thicken, about 2-3 minutes. Then add the heavy cream, salt, pepper, and nutmeg. Continue whisking until the sauce is thick enough to coat the back of a spoon—this should take another 2-3 minutes. If it seems too thick, add a splash more milk. If it’s too thin, let it simmer for another minute. Stir in the Parmesan cheese if you’re using it.
  7. Combine everything. Add the blanched green beans to the sauce and stir until they’re evenly coated. Taste and adjust the seasoning—you might want a little more salt or pepper. Transfer the mixture to your greased 9×13-inch baking dish and spread it into an even layer.
  8. Make the topping. In a small bowl, mix the panko breadcrumbs with the melted butter and Parmesan cheese. Sprinkle this evenly over the casserole. Don’t press it down—you want it to stay light and crunchy.
  9. Bake. Place the casserole in the preheated oven and bake for 20-25 minutes, until the sauce is bubbly and the topping is golden brown. If the topping is browning too quickly, tent the dish with foil for the last 5-10 minutes.
  10. Add the shallots and serve. Remove the casserole from the oven and let it rest for 5 minutes. Sprinkle the reserved crispy shallots over the top right before serving. This keeps them crunchy instead of getting soggy in the oven. Serve hot and watch everyone go back for seconds.

Cooking Tips & Techniques

I’ve made this casserole enough times to have a few tricks up my sleeve. Here’s what I’ve learned the hard way so you don’t have to:

Don’t skip the blanching step. I know it’s tempting to just throw the raw beans in the sauce and let them cook in the oven. But trust me—they’ll end up mushy and dull. Blanching gives you that perfect tender-crisp texture and locks in the bright green color. It takes 3 minutes and makes all the difference.

Watch your shallot temperature. The first time I made crispy shallots, I got impatient and cranked the heat too high. They went from golden to burnt in about 10 seconds. Keep the oil at medium heat and watch them carefully. They’ll continue to darken a bit after you pull them out, so take them out when they’re just a shade lighter than you want.

Season your sauce in layers. Don’t just add all the salt at the end. Season the mushrooms as they cook, season the roux, and then taste and adjust at the end. This builds deeper flavor throughout the dish. I forgot to season the mushrooms once, and the whole thing tasted flat no matter how much salt I added at the end.

Make it ahead if you need to. This casserole is actually better if you assemble it a day ahead and let the flavors meld in the fridge. Just prepare everything through step 7, cover it, and refrigerate. When you’re ready to bake, add the topping and bake for 25-30 minutes (add 5-10 minutes since it’s starting cold). Then add the crispy shallots at the end.

Don’t overcrowd the pan when frying shallots. I made this mistake during a test run—I dumped all the shallots in at once, and they steamed instead of fried. They came out soggy and sad. Work in batches. It takes a few extra minutes, but the results are worth it.

Toast your panko for extra crunch. If you have an extra 2 minutes, toast the panko in a dry skillet over medium heat until golden before mixing it with the butter and cheese. It gives the topping an even crunchier texture that holds up better in the oven.

Variations & Adaptations

One of the things I love about this recipe is how flexible it is. Here are some ways to make it your own:

Gluten-Free Version: Substitute the all-purpose flour in the sauce with a gluten-free all-purpose blend or cornstarch. Use gluten-free panko for the topping. And for the shallots, use rice flour or chickpea flour instead of wheat flour—they actually get extra crispy.

Dairy-Free Version: Use olive oil or vegan butter instead of regular butter. Swap the milk and cream with full-fat coconut milk or unsweetened oat milk. Omit the Parmesan or use a dairy-free alternative. The sauce will be slightly different in texture but still delicious.

Add Protein: Turn this into a main dish by adding cooked, crumbled bacon or diced ham to the sauce. Or toss in some shredded rotisserie chicken for a complete meal. I’ve done this when I needed a quick dinner, and it was a hit with my family.

Roasted Green Beans: If you want a deeper flavor, roast the green beans at 400°F for 15 minutes instead of blanching them. They’ll get slightly charred and caramelized, which adds a whole new dimension to the casserole.

Mushroom Medley: Instead of just cremini mushrooms, use a mix of shiitake, oyster, and cremini. Each mushroom brings its own texture and flavor, making the sauce more complex and interesting.

Spicy Kick: Add a pinch of red pepper flakes or a dash of cayenne to the sauce for some heat. It cuts through the richness and adds a nice little surprise.

My personal favorite variation? I swap half the green beans for asparagus in the spring. It’s bright, fresh, and feels like a celebration of the season. My neighbor Linda—the one who gave me this recipe—thought I was crazy when I told her. Then she tried it and asked for the recipe back with that change written in.

Serving & Storage Suggestions

This casserole is best served hot, right out of the oven, with the crispy shallots still crunchy on top. But here’s everything you need to know about serving and storing it:

Serving Temperature: Serve it hot—around 140°F if you want to get technical. Let it rest for 5 minutes after baking so the sauce sets slightly, but don’t let it sit too long or it’ll start to cool down.

What to Serve With It: This is the ultimate holiday side dish. Pair it with roasted turkey, mashed potatoes, and cranberry sauce for Thanksgiving. It’s also amazing with a simple roast chicken, pork chops, or even a hearty steak. For a vegetarian meal, serve it alongside a lentil loaf or stuffed squash.

Beverage Pairings: A crisp white wine like Sauvignon Blanc or unoaked Chardonnay cuts through the richness beautifully. If you’re a beer drinker, a light lager or pilsner works well. For non-alcoholic options, sparkling water with a squeeze of lemon is perfect.

Storage: Store leftovers in an airtight container in the refrigerator for up to 4 days. The shallots will lose their crunch, but the flavor will still be amazing. To reheat, place individual portions in the microwave for 1-2 minutes, or reheat the whole dish in a 350°F oven for 10-15 minutes.

Freezing: You can freeze the assembled casserole (without the topping and crispy shallots) for up to 3 months. Thaw it overnight in the refrigerator, then add the topping and bake as directed. Add the crispy shallots fresh after baking—frozen shallots are never the same.

Flavor Development: Honestly, this casserole tastes even better the next day. The flavors meld together overnight, and the sauce gets even creamier. I’ve been known to make it a day ahead on purpose, just because I like the leftovers so much.

Nutritional Information & Benefits

Here’s the nutritional breakdown for one serving (about 1 cup, serves 8):

Nutrient Amount per Serving
Calories 285
Total Fat 18g
Saturated Fat 9g
Cholesterol 40mg
Sodium 520mg
Total Carbohydrates 24g
Dietary Fiber 4g
Sugars 6g
Protein 8g
Vitamin A 15% DV
Vitamin C 20% DV
Calcium 15% DV
Iron 10% DV

Green beans are a fantastic source of vitamins A, C, and K, as well as fiber and folate. They’re low in calories but high in nutrients—a win-win. Mushrooms provide B vitamins and selenium, which support immune function. And while this dish isn’t exactly diet food (hello, butter and cream!), it’s made with real, whole ingredients that nourish your body.

For a lighter version, you can use low-fat milk instead of whole milk and heavy cream, and reduce the butter in the topping. It won’t be as rich, but it’ll still be delicious. I’ve made it both ways, and honestly? I prefer the full-fat version for special occasions and the lighter one for regular weeknight dinners.

This recipe is vegetarian as written, but it does contain dairy and gluten. For allergen-friendly alternatives, check out the variations section above.

Conclusion

This Classic Green Bean Casserole from Scratch with Crispy Shallots is the kind of recipe that becomes a tradition. It’s the dish people ask for, the one that shows up at every holiday table, the one that makes you feel like a kitchen hero even though it’s surprisingly simple to make. From the velvety mushroom sauce to the tender-crisp beans to those glorious, shattery shallots on top—every bite is a reminder that the best food doesn’t need to be complicated. It just needs to be made with care.

I love this recipe because it reminds me of that Tuesday afternoon at Linda’s house, standing in her kitchen while she stirred a pot and shrugged off my compliments. It reminds me that sometimes the best things in life come from people who aren’t trying to impress anyone—they’re just making something good because it matters to them. And now, every time I make this casserole, I feel like I’m passing that feeling along.

So go ahead—make this for your next holiday dinner, your next potluck, or just a random Tuesday when you want something that feels special. Customize it however you like, make it your own, and don’t forget the crispy shallots. They’re non-negotiable.

I’d love to hear how it turns out for you! Drop a comment below and let me know what variations you tried, or tag me in your photos on social media. Happy cooking, friends—you’ve got this.

Frequently Asked Questions

Can I use frozen green beans instead of fresh?

Yes, you can! Thaw them completely and pat them dry before blanching. Reduce the blanching time to 1-2 minutes since frozen beans are already partially cooked. They won’t be quite as crisp as fresh, but they’ll still taste great in a pinch.

How do I keep the crispy shallots from getting soggy?

The key is to add them right before serving. Don’t bake them with the casserole—they’ll absorb moisture and lose their crunch. If you’re making the casserole ahead, store the shallots in an airtight container at room temperature and sprinkle them on just before serving.

Can I make this casserole ahead of time?

Absolutely! Assemble the casserole through step 7, cover it, and refrigerate for up to 24 hours. When you’re ready to bake, add the topping and bake for 25-30 minutes (add 5-10 minutes since it’s starting cold). Add the crispy shallots at the end.

What can I use instead of heavy cream?

You can substitute the heavy cream with half-and-half or whole milk for a lighter sauce. For a dairy-free option, use full-fat coconut milk or unsweetened oat milk. The sauce will be slightly less rich, but it’ll still be creamy and delicious.

Why is my sauce too thin or too thick?

If your sauce is too thin, let it simmer for another 2-3 minutes to reduce and thicken. If it’s too thick, add a splash more milk or cream until it reaches the right consistency—it should coat the back of a spoon. The sauce will also thicken slightly as it bakes, so aim for a consistency that’s a little thinner than what you want in the final dish.

Pin This Recipe!

green bean casserole from scratch recipe

Print

Classic Green Bean Casserole from Scratch – Easy & Best

This from-scratch green bean casserole features a velvety mushroom sauce, tender-crisp green beans, and crispy fried shallots. It’s a showstopping side dish perfect for holidays and potlucks, made with simple, wholesome ingredients.

  • Author: Merry
  • Prep Time: 20 minutes
  • Cook Time: 30 minutes
  • Total Time: 50 minutes
  • Yield: 8 servings 1x
  • Category: Side Dish
  • Cuisine: American

Ingredients

Scale
  • 3 large shallots, thinly sliced into rings (about 1 cup sliced)
  • 1/2 cup all-purpose flour
  • 1/2 teaspoon salt
  • 1/4 teaspoon black pepper
  • 1 cup vegetable oil
  • 1 1/2 pounds fresh green beans, trimmed and cut into 2-inch pieces
  • 1 tablespoon salt (for blanching water)
  • Ice water bath
  • 2 tablespoons unsalted butter
  • 8 ounces cremini mushrooms, thinly sliced
  • 1 medium yellow onion, finely diced (about 1 cup)
  • 3 cloves garlic, minced
  • 1/4 cup all-purpose flour
  • 1 1/2 cups whole milk
  • 1/2 cup heavy cream
  • 1/2 teaspoon salt
  • 1/4 teaspoon black pepper
  • 1/4 teaspoon ground nutmeg
  • 1/4 cup dry white wine (optional)
  • 1/2 cup grated Parmesan cheese (optional)
  • 1/2 cup panko breadcrumbs
  • 2 tablespoons unsalted butter, melted
  • 1/4 cup grated Parmesan cheese
  • Reserved crispy shallots (about half of what you made)

Instructions

  1. Make the crispy shallots first. Heat 1 cup of vegetable oil in a small saucepan over medium heat. While it’s heating, toss the sliced shallots with flour, salt, and pepper in a bowl until they’re evenly coated. Shake off any excess flour. When the oil is hot (around 350°F), add the shallots in batches. Fry for 2-3 minutes, stirring occasionally, until golden brown and crispy. Use a slotted spoon to transfer them to a paper towel-lined plate. Sprinkle with a little extra salt while still warm. Se…
  2. Blanch the green beans. Bring a large pot of water to a boil and add 1 tablespoon of salt. Fill a large bowl with ice water. Add the green beans to the boiling water and cook for exactly 3 minutes. Immediately transfer them to the ice water bath. Let them sit for 2-3 minutes, then drain well and pat dry.
  3. Preheat your oven to 375°F (190°C).
  4. Sauté the mushrooms and onions. In a large skillet or Dutch oven, melt 2 tablespoons of butter over medium-high heat. Add the sliced mushrooms and cook for 5-6 minutes, stirring occasionally, until they release their liquid and start to brown. Add the diced onion and cook for another 3-4 minutes until softened. Add the minced garlic and cook for 30 seconds until fragrant. If using white wine, pour it in now and let it cook for 1-2 minutes, scraping up any browned bits.
  5. Make the roux. Sprinkle 1/4 cup of flour over the mushroom mixture and stir constantly for 1-2 minutes.
  6. Add the dairy. Slowly pour in the milk while whisking constantly. Keep whisking until the sauce is smooth and starts to thicken, about 2-3 minutes. Then add the heavy cream, salt, pepper, and nutmeg. Continue whisking until the sauce is thick enough to coat the back of a spoon, about 2-3 minutes. Stir in the Parmesan cheese if using.
  7. Combine everything. Add the blanched green beans to the sauce and stir until evenly coated. Taste and adjust seasoning. Transfer the mixture to a greased 9×13-inch baking dish and spread into an even layer.
  8. Make the topping. In a small bowl, mix the panko breadcrumbs with the melted butter and Parmesan cheese. Sprinkle evenly over the casserole.
  9. Bake for 20-25 minutes, until the sauce is bubbly and the topping is golden brown. If the topping is browning too quickly, tent with foil for the last 5-10 minutes.
  10. Remove from the oven and let rest for 5 minutes. Sprinkle the reserved crispy shallots over the top right before serving.

Notes

Don’t skip the blanching step—it ensures tender-crisp beans and vibrant color. Watch the shallot temperature carefully to avoid burning. Season the sauce in layers for deeper flavor. The casserole can be assembled a day ahead (through step 7) and refrigerated; add topping and bake for 25-30 minutes (add 5-10 minutes if starting cold). Add crispy shallots just before serving to keep them crunchy.

Nutrition

  • Serving Size: 1 cup
  • Calories: 285
  • Sugar: 6
  • Sodium: 520
  • Fat: 18
  • Saturated Fat: 9
  • Carbohydrates: 24
  • Fiber: 4
  • Protein: 8

Keywords: green bean casserole, from scratch, crispy shallots, Thanksgiving side dish, holiday recipe, vegetarian side dish, comfort food

Did you make this recipe?

Share a photo and tag us — we can't wait to see what you've made!

You might also love these recipes

Leave a Comment

Recipe rating ★☆ ★☆ ★☆ ★☆ ★☆