Fresh Green Bean Casserole from Scratch

Celebrate Thanksgiving this year with a twist on a tradition: Fresh Green Bean Casserole, which is made with completely fresh ingredients, including a homemade cream of mushroom soup. This vegan green bean casserole recipe is the perfect side dish for a holiday feast.

Love holiday side dishes made from scratch? Don’t skip Creamed Cornbread Casserole and Fresh Cranberry Sauce.

A woman lifts a spoon of Fresh Green Bean Casserole out of the dish

Y’all know me and my food philosophy: I’m all about putting spins on classics and traditional recipes.

Which is why this recipe—Green Bean Casserole—should be recognizable to all.

Except this rendition of the holiday classic is vegan.

Why I love this recipe:

Green Bean Casserole is one of those dishes everyone knows and loves, and it’s a holiday staple side dish for sure.

This recipe calls for all fresh ingredients, including green beans.

Classic green bean casserole calls for cream of mushroom soup, so we make our own homemade cream of mushroom soup with fresh mushrooms. Chop ’em up finely so that they add tons of flavor without affecting the texture.

We also make a crunchy onion topping for the casserole, taking the store bought crispy fried onions as inspiration and making them a little bit more rustic.

The end result is a delightfully comforting casserole that’s totally from scratch!

Other vegan-friendly Thanksgiving dishes: Vegan Sweet Potato Sage Olive Oil BiscuitsGarlicky Spagetti SquashVegan Tuscan Kale BruschettaDrunken Cranberry Sauce

Looking for a stellar Thanksgiving recipe, but need some inspiration? My Absolute BEST Thanksgiving recipes index is here to help!

Green beans, mushrooms and all the other ingredients are shown from above

What you need to make this recipe:

The Speckled Palate participates in affiliate programs. As an Amazon Associate, I earn a commission from qualifying purchases. Please refer to my disclosure page for more information about these affiliate programs.

Let’s talk ingredients!

In addition to the tools above, you’re going to need some ingredients to make this recipe, too! Chances are, you might already have some of them in your fridge or pantry. Scroll down to the recipe card for the full measurements and instructions.

Here’s what you need:

  • Fresh green beans—you’ll want to wash and trim them before getting started.
  • Onion—either yellow or white will work here. We don’t want to use a purple onion. You’ll need some for the topping, as well as the mushroom sauce.
  • Panko bread crumbs—this is going to provide some crunch in our topping. Regular breadcrumbs could work in a pinch, though I like panko better.
  • Kosher salt—I like to use a medium grain kosher salt for savory recipes like this one.
  • Extra virgin olive oil—or another neutral oil
  • White mushrooms—I like to use the pre-sliced kind from the store, but you can easily get your own button mushrooms and break them down. You have to chop them up really well so that they melt into the sauce.
  • Garlic—use a fresh clove and finely mince it!
  • Spices—for the mushroom sauce, we’re using a combination of freshly ground black pepper, kosher salt, Mural of Flavor seasoning, dried parsley and ground paprika.
  • All-purpose flour—we keep unbleached AP flour in our house, but the regular kind would work here, too.
  • Unsweetened almond milk—it’s important that this non-dairy milk is unsweetened. Any kind should work, though I suggest to stray away from coconut cream because that is extremely thick.
  • Vegetable stock—this thins out our mushroom sauce a little while also adding some flavor to the mix!
  • Hot sauce—we like to use a Louisiana hot sauce because my husband is from Louisiana, but you can use whatever hot sauce you’ve got on hand if you like it. This adds just a little kick.

Acceptable substitutions for this green bean casserole recipe:

  • You can use any type of non-dairy milk in this casserole. If you’re not feeding vegans or people with lactose intolerance, you can use cow’s milk, too.
  • I hear that cassava flour is good for making a roux, so if you want to make this a gluten free Green Bean Casserole, substitute out the all-purpose flour with cassava flour.
  • Mural of Flavor is a salt-free poultry seasoning that I love in everything from Penzey’s. If you can’t find it, you can use another type of poultry seasoning. (Even though there is no poultry in this dish, nor does the poultry seasoning have poultry in it.)

If you want to learn more about all things Green Bean Casserole, check out this ULTIMATE guide to Green Bean Casserole.

Collage showing how to make vegan green bean casserole

How to Make Green Bean Casserole with Fresh Green Beans

Cook the Green Beans

Trim the green beans. You can use a pair of kitchen shears or a sharp knife.

Bring a large pot of water to a boil over high heat. Season with a generous pinch of salt. I do this because it gives a little extra flavor to the beans. Since they don’t boil for long, you can make that a big pinch of slat.

When the water is at a rolling boil, gently lower the beans into it

Boil the beans until crisp tender. This will take 6-10 minutes, depending on your stovetop and how the temperature of the water.

Pro tip!

Keep an eye on the green beans because we still want them to have a snap! Mushy green beans are no bueno for a casserole like this, where we want the fresh green beans to shine.

When the green beans are done, drain in a colander and set ’em aside for later.

Make the Topping

This part is pretty easy to do while the green beans are cooking.

Slice the onion thin. What I do is chop the onion in half, remove the ends and the peel, and then use my knife to slice them suuuuuuuuper thin. You can also use a mandoline. 😉 

Toss the sliced onions in a large bowl with the panko and the salt, and then set ’em aside.

Make the Mushroom Sauce

Pro tip!

Before you start making the mushroom sauce, please, please, please chop and measure out your ingredients for it. I use the food processor for this step, as we’ll need chopped onion, mushrooms and garlic, and having them as fine as possible is a good thing.

Warm the olive oil in the same pot that the green beans cooked in over medium-high heat.

Add the mushrooms, chopped onion and garlic to the pan. Season well with salt and pepper, then cook until the onion is translucent.

Depending on your stovetop and the strength you’ve got it going, this can take anywhere from 6-8 minutes. The key to this part is continually stirring your pot with a wooden spoon so that nothing sticks to the bottom.

When the onion is translucent, remove the veggies from the pan. Set ’em aside in a bowl.

Place the pot back on the stovetop over medium heat. Sprinkle in the flour, stirring to combine it with the leftover oil. This is going to be our roux, and it will thicken the sauce, so please, don’t skip this step.

When the roux is golden brown, pour in the broth, ¼ cup of almond milk and the seasonings. That means the Mural of Flavor, parsley, paprika and hot sauce.

Bring the ingredients to a simmer, then pour the rest of the milk in.

Stir constantly until the liquid has thickened.

Once this happens, add back in the vegetables, and taste the sauce. If it needs any extra seasoning, like more salt and pepper or maybe another dash of hot sauce, now is your chance, so do it!

Once the sauce tastes good and is nice and thick, remove it from the heat.

Put the green bean casserole together and bake it

Preheat the oven, and spray a baking dish with nonstick baking spray.

Pour the steamed green beans into the pot with the mushroom sauce. Use tongs or a large spoon to toss the green beans with the sauce to ensure they’re coated.

Pour the green bean casserole into the prepared baking dish.

Sprinkle the topping ingredients on top of it, and transfer to the preheated oven.

Bake for 30-35 minutes or until bubbly, brown and delicious.

Enjoy warm with your other favorite side dishes!

Close up of the crispy onion topping, after baking

Erin’s Easy Entertaining Tips

Green Bean Casserole is an American Thanksgiving staple.

The beauty of any casserole like this one is that you can make it in advance!

Here are some tips and tricks that I’ve picked up along the way:

  • Make it ahead of time. Steam the green beans, and make the mushroom sauce 2-3 days early. Pour them into the casserole dish, and cover with plastic wrap. The day you’re baking the casserole, make the topping, sprinkle it on and then bake to perfection.
  • Customize the flavors for your palate (and your guests, too!) We love this casserole because it’s bursting with flavor. But if you don’t like spice, that’s OK, too!
  • Don’t skimp on the crunchy topping! We pile it high on ours because our family members love the topping, which is made with sliced onions and panko. What’s not to love about it?

A woman in orange holds a casserole dish of Fresh Green Bean Casserole

Frequently Asked Questions

Can I mix up Green Bean Casserole the night before my event?

Yes, you absolutely can and should. Quite honestly, you can do this a few days in advance. Just don’t mix up the topping OR sprinkle it on top of the casserole until you’re about to bake it, as it will get soggy hanging out in the fridge.

If you make this in advance, simply cover with plastic wrap and store in the fridge until it’s time to bake.

How do you keep green bean casserole from being runny?

The key is having a thickener in the sauce. We make a roux, which helps thicken the mushroom sauce.

How healthy is green bean casserole?

Green bean casserole is meant to be a treat. This recipe calls for all fresh ingredients, which probably positively impacts the health of the dish.

How far in advance can you make green bean casserole?

You may make this a few days in advance. I suggest to not add the crunchy topping until you’re ready to bake it, but the green bean filling can be done days in advance.

How do you know when green bean casserole is done?

The topping will be crunchy and delicious. The filling should be lightly bubbling, too.

How long should a casserole sit before serving?

I would let this sit for 15-20 minutes before serving so that it’s not molten hot!

Fresh Green Bean Casserole on a baking dish, after baking

Quick Tips and Tricks for Making Fresh Green Bean Casserole

  • Store it in the fridge, covered in plastic wrap or in a food safe container.The topping won’t be as crispy when you store it in the fridge, but it still tastes pretty darn delicious.
  • Substitution alert: You can use basically any non-dairy milk in this casserole, so long as it’s unsweetened. (The package will say this, so look out for it at the grocery store!) I don’t advise using coconut cream, as that’s suuuuuuper creamy and a little more decadent than the original recipe calls for.

What are some other side dishes I can serve at a holiday gathering?

Fresh Green Bean Casserole on a table with other Friendsgiving foods

Here’s how you make this dish:

Fresh Green Bean Casserole on a baking dish, after baking
Yield: 8 servings

Fresh Green Bean Casserole

Prep Time: 15 minutes
Cook Time: 45 minutes
Total Time: 1 hour

Celebrate Thanksgiving this year with a twist on a tradition: Fresh Green Bean Casserole, which is made with all-fresh ingredients and vegan. It's a perfect side for a Thanksgiving feast.


  • 2 lbs. green beans, fresh and trimmed

Crispy Onion Topping

  • 1 onion, large
  • ¼ cup panko bread crumbs
  • ½ teaspoon kosher salt

Mushroom Sauce

  • 3 tablespoons extra virgin olive oil
  • ½ lb. white mushrooms, finely diced
  • ½ small onion, finely diced
  • 1 garlic clove, finely minced
  • ½ teaspoon freshly ground black pepper
  • ½ teaspoon kosher salt
  • 1/3 cup unbleached all-purpose flour
  • ¾ cups unsweetened almond milk, divided
  • 1 ½ cups vegetable stock, low-sodium if possible
  • 1 teaspoon Mural of Flavor seasoning
  • ½ teaspoon dried parsley
  • ½ teaspoon ground paprika
  • 1 teaspoon Louisiana hot sauce


  1. First, trim the green beans with a pair of kitchen shears or a sharp knife.

Cook the Green Beans

  1. Bring a large pot of water to a boil over high heat. Season with a generous pinch of salt.
  2. When the water is boiling, gently lower the green beans in the water. Boil them until crisp tender, around 6-10 minutes, depending on your stovetop. (Keep an eye on them because we do not want mushy green beans!)
  3. Drain the steamed green beans in a colander and set aside for later.

Make the Topping

  1. While the beans are cooking, slice the onion for the topping thinly.
  2. Toss in a large bowl with the panko bread crumbs and ½ teaspoon of salt, and set aside.

Make the Mushroom Sauce

  1. Chop and measure out all the ingredients for the sauce, and place them near your stovetop. You can use the food processor to speed up this process.
  2. Using the same large pot that the green beans cooked in, heat the olive oil over medium-high heat.
  3. Add the chopped onion, mushrooms and garlic to the pan. Season generously with salt and pepper, and cook until the onion is translucent, about 6-8 minutes, depending on your stovetop. Continually stir this, as you don't want your veggies to stick to the bottom of the pan.
  4. Remove the vegetables from the pan and set aside.
  5. Place the pot back on the stovetop on medium and add the flour. Stir over the heat until it has combined with the leftover fat in the bottom of the pan to create a roux. This is going to thicken our sauce.
  6. When the roux has been made, add the broth, ¼ cup of almond milk and the seasonings for the mushroom sauce. Simmer lightly.
  7. When the mixture begins thickening, pour the rest of the non-dairy milk into the sauce.
  8. Stir until it has thickened, then add back in the mushroom/onion/garlic mix. (Now is the point to taste your mushroom sauce. Feel free to add any additional seasonings, as this'll be the last time you season it!)
  9. Remove the mushroom sauce from the heat.

Put together and bake the casserole

  1. Preheat the oven to 350°F. Spray a baking dish with nonstick baking spray, and set aside.
  2. Toss the green beans in the mushroom sauce, still in the pan, and stir until the beans are coated.
  3. Pour into the prepared baking dish. Sprinkle the topping on top of the casserole.
  4. Place in the preheated oven, and bake for 30-35 minutes, or until bubbly, brown and delicious.
  5. Enjoy warm!

Nutrition Information:



Serving Size:

1 serving

Amount Per Serving: Calories: 190Total Fat: 12gSaturated Fat: 6gTrans Fat: 0gUnsaturated Fat: 5gCholesterol: 0mgSodium: 345mgCarbohydrates: 19gFiber: 4gSugar: 6gProtein: 5g

Nutrition facts are an estimate and not guaranteed to be accurate.

How much did you love this recipe?

Follow me on Instagram for more content, and share a photo of your creation with the hashtag #speckledpalate!

Similar Posts


    1. Ha! Glad to be a mindreader, Kelly! I’d never had one before that wasn’t 99% canned ingredients, either, and it’s pretty darn delightful. Interested to hear what you think if you give it a try!

  1. I will try this recipe out over the holiday season. Always looking to try a new way to serve green beans. Thanks for sharing! 🙂

    1. I’m always looking for a new way to serve green beans, too, Shonda, so I hope you like this version as much as we did! Thanks for stopping by!

  2. I am a lover of green beans but hate green bean casserole, canned beans, canned mushroom soup, yuck. I am also allergic to mushrooms. IF I could eat them I would try your dish, I love using fresh ingredients. I know my husband would love this.

    1. All the canned stuff freaks me out, to be honest, and I’m trying to get away from recipes that call for them. (Easier said than done.) That’s awful that you’re allergic to mushrooms, but as someone who also has more strange food allergies (bananas and pineapples, boo), I feel you.

  3. I totally get it! I don’t like mushrooms either. Not even for flavoring. Ick! We do make green bean casserole each year for the holidays, and I do have a little taste. Thanks for sharing!

    1. High-five for not liking mushrooms, Krystal! Funny how our tastebuds are, huh? Here’s to tasty green bean casseroles and other dishes that don’t taste strongly of mushroom in our futures…

  4. LOVE Green Bean Casserole. Our brains must be on the same wave-length because I just did a post on it, too! Your recipe looks delicious and I can’t wait to try it!

    1. I love that we’re on the same wavelength here, Chelsea, and I look forward to seeing your Green Bean Casserole post! It’s such a fun holiday dish!

  5. Despite being allergic to green beans, this looks so good. I’m wondering if I could use the sauce and topping on another veg.

    1. Oh no! That’s unfortunate about your green bean allergy, but I bet this sauce would be awesome on top of another vegetable… lots of ’em, actually.

  6. Girl, you and I are on the same page with foods! Mushrooms = bleh, but green beans are my favorite vegetable! This looks good… thanks for sharing 🙂

    1. Haha! I feel you on the mushrooms AND the green beans. Love those green beans so much, and to me, the mushrooms are tolerable in this dish, so maybe you’ll feel the same way? Thanks for stopping by!

  7. I am in love with this recipe!! This is one of my favorite dishes, but trying my best to eat a much more whole food driven diet anywhere possible. Can’t wait to try this out and add it to my holiday fixins!!

  8. I’ve never had green beans in casserole form. It’s just not done here! But with those mushrooms (I love them btw and will most definitely keep them on the chunkier side) and crispy topping, I think this is a win 🙂 So many bean casseroles call for canned soup which made me cringe. This is awesome.

Leave a Reply

Your email address will not be published. Required fields are marked *