This post may contain affiliate links. Please read our disclosure policy.
This caramelized onion green bean casserole is perfect for Thanksgiving and Christmas gatherings. It uses fresh green beans and can be made ahead of time, making it a simple and delicious comfort food recipe.

Table of Contents
This homemade green bean casserole is a traditional dish on my family’s holiday menu.
Fresh green beans, slow-cooked caramelized onions, and a creamy from-scratch sauce are combined to create a flavor that can’t be replicated with canned soup and canned beans.
The onions cook low and slow until they’re golden and sweet, giving this classic Thanksgiving dish an elevated flavor and velvety texture.
A simple homemade béchamel (white sauce) comes together in just a few minutes on the stove, and everything is tossed together and baked until bubbly, then topped with crispy onions.
It’s cozy, comforting, and always one of the first dishes to disappear from the table.
And the best part? You can make it ahead of time. Prep it the day before or early in the morning, cover and refrigerate, then bake or reheat it when you’re ready to serve.
We love serving caramelized onion green bean casserole with other traditional holiday recipes like easy roasted chicken, sourdough stuffing, and homemade cranberry sauce.

Why You’ll Love This Recipe
No Canned Soups: This casserole is made with real ingredients and skips the processed cream soups, making it a healthier option with better flavor.
Creamy: The simple sauce is quick and easy to make and is perfectly creamy.
Make-Ahead Friendly: This casserole tastes even better the next day! For busy holidays, feel free to make the day before and reheat when ready to serve.
Fresh Green Beans: Using fresh green beans gives this Thanksgiving side dish a better texture and flavor than frozen or canned beans. They are tender without being too mushy.
Comfort Food: This dish is warm, savory, and has just the right amount of sweetness from the caramelized onions.
Holiday Favorite: Holiday dinners don’t feel complete without homemade green bean casserole! It’s a classic, old-fashioned recipe with real ingredients that store-bought options can’t compete with.
Ingredients

Butter: I prefer unsalted butter because it lets me control the salt in the cream sauce.
Onions: Yellow onions caramelize nicely and add a natural sweetness to the dish.
Flour: All-purpose flour thickens the sauce and gives it a creamy texture. If needed, a gluten-free option works well too.
Broth: I like using home-canned chicken broth for the flavor and added nutrients, but store-bought broth works well too.
Milk: Use your favorite dairy option. Whole milk is my go-to for the best creamy, but not too heavy sauce. For more richness, you can also use heavy cream.
Green Beans: Use fresh green beans, trimmed and halved for best texture.
Fried Onions: Add fried onions in the last stretch of baking so they stay crunchy and add the perfect finishing touch. I used French’s friend onions.
Get the full list of ingredients and measurements on the printable recipe card below.
Tools You Will Need
Skillet: You will need a skillet for caramelizing the onions and making the cream sauce.
Baking Dish: I prefer a 9″x9″ baking dish because it is deeper than the classic 9″x13″ dish, which means the beans won’t overcook.
Step-by-Step Instructions

Step 1: In a large skillet, melt the butter over medium heat. Add the onions and a pinch of salt.
Cook for about 3 minutes or until the onions are translucent.

Step 2: Reduce the heat to low, cover the onions, and let them cook low and slow until they are a golden color. Stir occasionally.
The secret to caramelized onions is low and slow, so don’t rush. This can take 30-45 minutes.
When the onions are 5-10 minutes from done, add the mushrooms if you prefer.

Step 3: While you wait for the onions to finish, bring a large pot of water to a boil.
Then, once the onions are done, transfer them to a separate dish and set aside.
Don’t wipe out the skillet. Those browned bits will add flavor to the sauce.

Step 4: Add the green beans to the boiling water. Cook for 5-6 minutes or until bright green and slightly tender.
Drain and rinse with cool water to stop the cooking process. Set aside.

Step 5: Preheat the oven to 350°F.
In the same skillet you used to cook the onions, melt the butter over medium heat.
Stir in the flour and cook for 1–2 minutes to remove the raw flour taste.

Step 6: Pour in the chicken broth and Worcestershire sauce, whisking until the sauce thickens.

Step 7: Add the milk and whisk until smooth and creamy. Season with salt and pepper to taste.

Step 8: Remove from heat and stir in the caramelized onions.

Step 9: Add the green beans to the sauce and toss until coated.

Step 10: Transfer the mixture to a 9×9-inch baking dish and spread evenly.
Bake for 25 minutes, or until hot and bubbly.

Step 11: Remove from the oven, stir the casserole. Bump up the heat to 375° F.
Then, sprinkle with fried onions and bake for an additional 5-10 minutes, until golden and crisp on top and bubbly around the sides of the dish.
The flavor will develop as the dish cools, and I even prefer it the next day!
Tips for Success
- I wrote the instructions so you can overlap steps and save time in the kitchen. However, you can always make each part—onions, beans, and sauce—separately if that works better for you.
- Taste the sauce as you go, and season with salt and pepper to your liking.
- I skip the mushrooms because I famously dislike them (right up there with wasabi). But if you love mushrooms in green bean casserole, add them!
- Don’t rush the onions. Cooking low and slow yields the best caramelized flavor.
- To save time, you can make the caramelized onions the day before.
- Casseroles often taste better the next day. For busy holidays, make the green bean casserole the day before.

Serving Suggestions
Roast Chicken or Turkey: This caramelized onion green bean casserole pairs perfectly with roasted chicken or Thanksgiving turkey.
Sourdough: Serve alongside a slice of sourdough bread, brioche rolls, or homemade stuffing.
Cranberry Sauce: The sweet-tart flavor of homemade cranberry sauce is delicious with this creamy Thanksgiving side dish.
Ham: Salty glazed ham is another great main dish option. The sweetness from the glaze complements the savory green beans and onions.
Pork Chops: Crispy cheddar pork chops pair nicely with this casserole for a simple weeknight or holiday meal.

Storing
- After cooling, cover and store in an airtight container in the fridge for up to 4 days.
- To reheat, warm in the oven at 350°F until heated through. Add fresh fried onions if needed to keep the top crispy.
Variations
Mushroom Lovers: Sauté sliced mushrooms along with the onions as they cook down, then mix them into the casserole for extra savory flavor.
Cheesy Version: Stir in some shredded parmesan, cheddar, or another favorite cheese into the sauce for a delicious, cheesy dish. Don’t forget to sprinkle a little on top before adding the fried onions, too!
Gluten-Free: Use a gluten-free flour blend to thicken the sauce and make sure your fried onions are gluten-free. Everything else in the recipe stays the same.

FAQs
Yes, you can. Fresh green beans will have the best texture, but canned will work in a pinch. Just drain them well and skip the blanching step.
You can leave out the onions if needed. The casserole won’t have the same depth of flavor, but it will still turn out creamy and delicious.
Absolutely. Store-bought fried onions are easy to grab and work great!
Let’s Connect!
If you tried this recipe and loved it, leave a comment or review below.
Also, don’t forget to pin this post and follow Moon + Magnolia on Pinterest. You can save all my recipes on your boards and keep up with the latest happenings!
Share your creations on Instagram and tag @moon_and_magnolia


Caramelized Onion Green Bean Casserole
Equipment
- 9×9 Baking Dish
Ingredients
Caramelized Onions
- 4 tablespoons unsalted butter
- 1 large onion, chopped
- 8 ounces sliced mushrooms, optional
Green Beans
- 1 ½ pounds fresh green beans, ends trimmed and halved
Cream Sauce
- 4 tablespoons unsalted butter
- 4 tablespoons all-purpose flour
- 1 cup chicken broth
- 1 tablespoon Worcestershire sauce
- 1 ½ cups milk
Topping
- 2 cups fried onions, such as French's
Instructions
- Start the Onions. In a large skillet, melt the butter over medium heat. Add the onions and a pinch of salt. Cook for about 3 minutes or until the onions are translucent.4 tablespoons unsalted butter, 1 large onion, 8 ounces sliced mushrooms
- Caramelize the Onions. Reduce the heat to low, cover the onions and let them cook low and slow until they are a golden color. Stir occasionally. The secret to caramelized onions is low and slow, so don't rush. This can take 30-45 minutes.
- Add Optional Mushrooms. When the onions are 5-10 minutes from done, add the mushrooms if you prefer.
- Boil Water and Finish the Onions. While you wait for the onions to finish, bring a large pot of water to a boil. Then, once the onions are done, transfer them to a separate dish and set aside. Don't wipe out the skillet. Those browned bits will add flavor to the sauce.
- Blanch the Green Beans. Add the green beans to the boiling water. Cook for 5-6 minutes or until bright green and slightly tender. Drain and rinse with cool water to stop the cooking process. Set aside.1 ½ pounds fresh green beans
- Preheat the oven. Preheat the oven to 350°F.
- Make the Roux. In the same skillet you used to cook the onions, melt the butter over medium heat. Stir in the flour and cook for 1–2 minutes to remove the raw flour taste.4 tablespoons unsalted butter, 4 tablespoons all-purpose flour
- Add the Broth. Pour in the chicken broth and Worcestershire sauce, whisking until the sauce thickens.1 cup chicken broth, 1 tablespoon Worcestershire sauce
- Add the Milk. Add the milk and whisk until smooth and creamy. Season with salt and pepper to taste.1 ½ cups milk
- Combine Caramelized Onions and Sauce. Remove from heat and stir in the caramelized onions.
- Mix in the Green Beans. Add the green beans to the sauce and toss until coated.
- Assemble the Casserole. Transfer the mixture to a 9×9-inch baking dish and spread evenly. Bake for 25 minutes, or until hot and bubbly.
- Add the Topping. Remove from the oven, stir the casserole. Bump up the heat to 375° F. Then, sprinkle with fried onions and bake for an additional 5-10 minutes, until golden and crisp on top and bubbly around the sides of the dish. The flavor will develop as the dish cools, and I even prefer it the next day!2 cups fried onions
Notes
- Taste the sauce as you go, and season with salt and pepper to your liking.
- I wrote the instructions so you can overlap steps and save time in the kitchen. However, you can always make each part—onions, beans, and sauce—separately if that works better for you.
- I skip the mushrooms because I famously dislike them (right up there with wasabi). But if you love mushrooms in green bean casserole, add them!
- Don’t rush the onions. Cooking low and slow yields the best caramelized flavor.
- To save time, you can make the caramelized onions the day before.
- Casseroles often taste better the next day. For busy holidays, make the green bean casserole the day before.
Nutrition
Nutrition information is auto-calculated and may not reflect your final product. Please verify independently if needed.

This is a family-favorite at the holidays. I skip the mushrooms, but my husband likes to toss in fresh mushrooms. (I’m the picky one who doesn’t like mushrooms, haha!)