There's nothing quite like homemade green bean casserole made completely from scratch! This recipe adds in caramelized onions for a decadent spin on this comfort food classic.
Green bean casserole makes me think of fall more than any other casserole. This is the dish that always makes it on the table at Thanksgiving and usually shows up to at least one family potluck every year.
I grew up on canned green bean casserole. The kind that's made with cream of mushroom soup, canned green beans, and crispy onions. It's delicious.
But completely from-scratch, homemade green bean casserole is even better and is really worth the extra time (sorry mom)!
- Made from-scratch with a rich and creamy homemade mushroom sauce
- Caramelized onions add a sweet and decadent twist (but you can omit them for a classic green bean casserole!)
- Can be made in advance
- Made without canned cream of mushroom soup
- Perfect for Thanksgiving and other winter holidays!
- Green beans: Fresh green beans are the centerpiece of this recipe but frozen can also be used.
- Homemade mushroom sauce: This is made with butter, diced baby Bella mushrooms (white or cremini also work), garlic, milk, all-purpose flour for thickening, and vegetable broth.
- Caramelized onions: These add a lot of extra flavor and sweetness to this casserole. I use yellow onions but white onions will also work.
- Fried onions: Arguably the best part of this recipe. I use French's crispy fried onions.
How to make caramelized onions
- Slice 1 and ½ pounds large onions into thin strips. In a large skillet, heat one tablespoon of oil over medium heat. Sprinkle the onions with salt and saute for 10 minutes, until lightly golden.
- Reduce the heat to medium-low and let the onions work their magic. Stir the onions every 7-10 minutes to prevent them from sticking.
- To speed up the cooking process and add sweetness you can sprinkle the onions with ~½ teaspoon of sugar.
- If the onions are drying out, splash them with a teaspoon of water and reduce the heat.
How to assemble the casserole
- Green beans
- Caramelized onions
- Mushroom sauce
- French fried onions
Cover in foil for the first 15 minutes of cooking. This allows the casserole to warm up without burning the fried onions on top.
Recipe FAQ and expert tips
- Serving ideas: Serve alongside instant pot mashed sweet potatoes, sourdough stuffing, vegan cornbread muffins and panko tofu cutlets or a well-rounded vegetarian dinner.
- You can omit the caramelized onions if you want a more traditional green bean casserole.
Yes! Store cooked onions in the fridge for 3-4 days. I like to make a double batch of caramelized onions so that they can be used as a topping in other recipes or in mushroom cheesesteaks.
Yes! Cook green beans according to package instructions before adding to the casserole.
A few simple swaps can make this recipe dairy-free. Use an unsweetened and unflavored non-dairy milk, such as soy milk, in place of whole milk. Use dairy-free butter or olive oil in place of butter.
Yes! Make the casserole according to the recipe but don't add the french onions. Cover and store in the fridge for up to 3 days. Remove from the fridge and let come to room temp while the oven is preheating. Add the fried onion topping and cook according to recipe instructions.
For best quality, keep leftovers refrigerated in a closed container for up to 3-4 days.
The sauce can be made gluten-free by using a gluten-free all purpose flour blend in place of flour. French fried onions are made using wheat flour. I haven't come across a gluten-free fried onion but there are definitely recipes out there if you want to try your hand at homemade fried onions!
Looking for more casseroles?
Here are a few of my favorites:
Did you make this recipe? You can leave a star rating ⭐️⭐️⭐️⭐️⭐️ in the recipe card or a review down in the comment section. I always appreciate your feedback! You can also follow along on my YouTube, Instagram, Facebook, and Pinterest or sign up for my newsletter!
Green Bean Casserole with Caramelized Onions
- 1 and ½ pounds yellow onions sliced into thin strips
- 1 tablespoon olive oil
- ⅛ teaspoon table salt
- 1 and ½ pounds fresh green beans ends snapped off
- water to boil green beans
- 1 teaspoon coarse salt divided
- 2 tablespoons butter
- 8 ounces baby bella mushrooms roughly chopped
- 2 cloves garlic minced
- 2 tablespoons all-purpose flour
- ¾ cup vegetable broth
- 1 and ¼ cup whole milk
- ½ teaspoon black pepper
- 1 cup fried onions
- Start by caramelizing onions. Heat a skillet over medium heat. Once hot, add one tablespoon of olive oil. Add sliced onions to the hot oil and sprinkle with ⅛ teaspoon salt. Saute for 8-10 minutes over medium heat, until softened. Reduce heat to medium low. Cook onions for another 40-45 minutes, stirring only every 10 minutes. If onions start to brown too quickly, splash with a teaspoon of water. The onions are ready when deep gold and very soft.
- Preheat the oven to 400 degrees F.
- Meanwhile, prep remaining ingredients. Fill a 3 quart pot half full with water. Add ½ teaspoon coarse salt. Bring to a boil over high heat. Add green beans and cook until al dente, about 5-7 minutes. Drain and set aside.
- To make the cream sauce, heat a large skillet over medium-high heat. Add two tablespoons of butter. Once melted, add the chopped mushrooms. Cook for 6-8 minutes, until softened. Add the minced garlic and cook until golden and fragrant, about 1 minute. Sprinkle in the all-purpose flour. Cook for another minute, stirring frequently to prevent burning.
- Using a whisk, slowly stir vegetable broth into the flour and garlic. Continue whisking while you slowly pour in the milk. Sprinkle with ½ teaspoon salt and pepper. Once the mixture starts bubbling over medium-high heat, reduce to low. Simmer until thickened, stirring occasionally, about 10 minutes. It should be thick enough to coat the back of a spoon without falling off.
- Lightly coat a 2 quart casserole dish with non-stick spray or oil. Evenly layer the cooked green beans across the bottom. Cover with the caramelized onions (about 1 cup). Pour the sauce over the green beans and onions. Sprinkle the top with french fried onions.
- Cover with tin foil. Bake at 400 degrees for 25 minutes. Take tin foil off for the last 10 minutes. The casserole is ready when it is bubbling and the fried onions are golden brown. Enjoy!
- Green beans: Frozen green beans can also be used. Cook according to package instructions before adding to the casserole dish.
- Gluten-free option: You can use a gluten-free all-purpose flour mix in place of standard all-purpose flour in the sauce but French fried onions usually contain gluten.
- Vegan options: Use unsweetened, unflavored soy or almond milk and vegan butter or olive oil in place of whole milk and dairy butter.
- Make-ahead options: Make the casserole according to the recipe instructions but don't add the fried onions. Cover and store in the fridge for up to 3 days. Remove from the fridge and let come to room temp while the oven is preheating. Add the fried onion topping and cook according to recipe instructions.
- Leftovers: Keep leftovers covered and refrigerated for 3-4 days for best quality.