Quick Recipe Version (TL;DR)
Quick Ingredients
- 2 pounds fresh green beans, trimmed and cut into 2-inch pieces
- 4 large shallots, about 8 ounces peeled, thinly sliced; 1/4 cup all-purpose flour; 1 1/2 cups neutral oil for frying; 1/4 teaspoon fine sea salt
- 12 ounces cremini mushrooms, sliced; 1 small yellow onion, finely diced; 3 garlic cloves, minced
- 3 tablespoons unsalted butter and 1/4 cup all-purpose flour for the sauce
- 1 cup low-sodium vegetable broth, 1 1/2 cups whole milk, and 1/2 cup heavy cream
- 1 teaspoon Dijon mustard, 1 teaspoon fresh thyme leaves, 1 teaspoon fine sea salt, and 1/2 teaspoon ground black pepper for the sauce
- 3/4 cup panko breadcrumbs, 2 tablespoons unsalted butter, and 1/4 teaspoon fine sea salt for the topping
- 1 teaspoon fresh thyme leaves for finishing; 2 teaspoons fine sea salt for the blanching water
Do This
- 1. Heat the oven to 375°F (190°C). Lightly butter a 9-by-13-inch baking dish. Prepare a large bowl of ice water.
- 2. Boil the green beans in 4 quarts of water with 2 teaspoons salt for 4 minutes. Transfer to ice water for 2 minutes, then drain and dry thoroughly.
- 3. Toss the shallots with 1/4 cup flour. Fry in 350°F (175°C) oil in 3 batches for about 3 minutes per batch, until lightly golden. Drain and season with 1/4 teaspoon salt.
- 4. Melt 3 tablespoons butter in a large skillet. Cook mushrooms for 8 minutes, add onion for 4 minutes, then garlic and thyme for 30 seconds. Stir in 1/4 cup flour for 1 minute.
- 5. Gradually stir in broth, milk, and cream. Simmer gently for 5 minutes, then add Dijon, 1 teaspoon salt, and pepper. Fold in the beans and transfer to the baking dish.
- 6. Combine panko, 2 tablespoons melted butter, and 1/4 teaspoon salt. Sprinkle over the casserole and bake for 20 minutes. Add the fried shallots and bake for 5 minutes more.
- 7. Rest for 10 minutes, sprinkle with the remaining 1 teaspoon thyme, and serve warm.
Why You’ll Love This Recipe
- A classic, made from scratch: Fresh green beans and a creamy mushroom sauce deliver all the comforting holiday flavor without condensed soup.
- Two wonderfully crunchy toppings: Buttery panko and homemade fried shallots make every serving a little special.
- Balanced texture: Blanching keeps the beans tender with a gentle bite, while browned mushrooms add savory depth.
- Holiday-friendly: You can assemble the casserole ahead and keep the toppings separate until baking time.
Grocery List
- Produce: 2 pounds green beans, 12 ounces cremini mushrooms, 4 large shallots, 1 small yellow onion, 3 garlic cloves, and 1 small bunch fresh thyme.
- Dairy: Unsalted butter, whole milk, and heavy cream.
- Pantry: All-purpose flour, panko breadcrumbs, low-sodium vegetable broth, Dijon mustard, neutral frying oil such as canola or sunflower oil, fine sea salt, and ground black pepper.
Full Ingredients
For the Green Beans
- 2 pounds fresh green beans, stem ends trimmed and beans cut into 2-inch pieces
- 4 quarts water, for blanching
- 2 teaspoons fine sea salt, for the blanching water
- 4 cups ice mixed with 8 cups cold water, for an ice bath
For the Crispy Shallots
- 4 large shallots, about 8 ounces after peeling, sliced crosswise into 1/8-inch-thick rings and separated
- 1/4 cup all-purpose flour
- 1 1/2 cups neutral oil, such as canola or sunflower oil, for shallow-frying
- 1/4 teaspoon fine sea salt
For the Creamy Mushroom Sauce
- 3 tablespoons unsalted butter
- 12 ounces cremini mushrooms, cleaned, dried, and sliced 1/4 inch thick
- 1 small yellow onion, finely diced, about 3/4 cup
- 3 garlic cloves, minced
- 1 teaspoon fresh thyme leaves
- 1/4 cup all-purpose flour
- 1 cup low-sodium vegetable broth
- 1 1/2 cups whole milk
- 1/2 cup heavy cream
- 1 teaspoon Dijon mustard
- 1 teaspoon fine sea salt
- 1/2 teaspoon ground black pepper
For the Breadcrumb Topping and Finish
- 3/4 cup panko breadcrumbs
- 2 tablespoons unsalted butter, melted
- 1/4 teaspoon fine sea salt
- 1 teaspoon fresh thyme leaves, for finishing
- 1 teaspoon softened unsalted butter, for greasing the baking dish

Step-by-Step Instructions
Step 1: Prepare the Oven, Baking Dish, and Ice Bath
Heat the oven to 375°F (190°C) with a rack in the center. Grease a 9-by-13-inch baking dish with 1 teaspoon softened butter. Bring 4 quarts water and 2 teaspoons fine sea salt to a rolling boil in a large pot.
In a large bowl, combine 4 cups ice with 8 cups cold water. Have a colander and a clean kitchen towel ready. Measure the sauce ingredients before you start cooking so everything comes together smoothly.
Step 2: Blanch and Thoroughly Dry the Green Beans
Add the green beans to the boiling water and cook for 4 minutes, until bright green and crisp-tender. Immediately transfer them to the ice bath with a spider strainer or slotted spoon. Leave them in the ice water for 2 minutes to stop the cooking.
Drain well, then spread the beans over the clean towel and pat dry. Removing this extra moisture is important: wet beans can thin the mushroom sauce as the casserole bakes.
Step 3: Fry the Shallots Until Lightly Golden
Line a heatproof plate or tray with paper towels. Pour the oil into a heavy, approximately 8-inch-wide saucepan; it should be about 1/2 inch deep, with the pan no more than one-third full. Heat over medium heat to 350°F (175°C), checking with a frying thermometer.
Pat the sliced shallots dry, separate the rings, and toss with 1/4 cup flour. Shake off excess flour in a sieve. Fry in 3 batches for about 3 minutes per batch, stirring gently to separate the rings. Remove them as soon as they are lightly golden; they will continue to darken slightly as they cool.
Allow the oil to return to 350°F (175°C) between batches. Transfer the shallots to the lined tray, sprinkle with 1/4 teaspoon salt, and spread into a loose layer. Leave uncovered so they stay crisp. Set the hot oil aside safely to cool completely before handling or discarding it.
Step 4: Make the Creamy Mushroom Sauce
Melt 3 tablespoons butter in a large, deep 12-inch skillet over medium-high heat. Add the mushrooms and cook for 8 minutes, stirring occasionally, until their released moisture has mostly evaporated and their edges are golden.
Reduce the heat to medium. Add the onion and cook for 4 minutes, stirring frequently, until softened. Add the garlic and 1 teaspoon thyme leaves; cook for 30 seconds. Sprinkle in the remaining 1/4 cup flour and stir continuously for 1 minute, coating the vegetables.
Gradually stir in the vegetable broth, scraping up any browned bits. Slowly add the milk and cream, stirring until smooth. Bring to a gentle simmer and cook for 5 minutes, stirring frequently, until the sauce coats the back of a spoon. Avoid a hard boil. Stir in the Dijon mustard, 1 teaspoon salt, and black pepper.
Step 5: Assemble the Casserole and Add the Breadcrumbs
Remove the skillet from the heat. Fold the dried green beans into the mushroom sauce until evenly coated. Transfer the mixture to the prepared baking dish and spread into an even layer.
In a small bowl, stir together the panko, 2 tablespoons melted butter, and 1/4 teaspoon salt until the crumbs are evenly moistened. Sprinkle evenly over the casserole. Keep the fried shallots aside for now so they do not burn during the main baking time.
Step 6: Bake Until Bubbling and Finish with Shallots
Bake uncovered at 375°F (190°C) for 20 minutes, until the sauce is bubbling around the edges and the breadcrumbs are turning golden. Scatter the fried shallots over the top and return the dish to the oven for 5 minutes.
The finished casserole should be hot throughout, with a lightly browned breadcrumb crust and crisp, golden shallots. If the shallots begin to darken too quickly, loosely tent the dish with foil for the remaining baking time.
Step 7: Rest, Garnish, and Serve
Let the casserole rest for 10 minutes before serving. This gives the sauce time to settle so it clings to the beans rather than pooling on the plate. Sprinkle with the remaining 1 teaspoon fresh thyme leaves and serve warm, scooping down through both crunchy toppings.
Pro Tips
- Give the mushrooms time to brown: Let their moisture evaporate before adding the onion. Browning builds the deep, savory flavor that makes the sauce so satisfying.
- Use the shallots’ color as your final guide: Thin rings can go from golden to bitter quickly. Remove them while pale golden, even if a batch finishes a little early.
- Keep the beans crisp-tender: They will soften further in the oven. After blanching, they should still have a gentle bite.
- Check the sauce before assembling: It should be creamy and pourable, not stiff. If it becomes too thick, stir in 1 tablespoon milk at a time, up to 3 tablespoons.
- Protect the crunch: Do not cover freshly fried shallots or mix them into the sauce. Add them only during the last 5 minutes of baking.
Variations
- Cheesy topping: Mix 1/2 cup finely grated Parmesan into the buttered panko. Reduce the salt in the breadcrumb topping to 1/8 teaspoon. Choose vegetarian-labeled Parmesan if needed.
- Gluten-free: Use an equal amount of a gluten-free all-purpose flour blend suitable for sauces, plus certified gluten-free panko. Check that the broth and Dijon mustard are also gluten-free.
- Frozen green bean shortcut: Replace the fresh beans with 2 pounds frozen cut green beans. Thaw completely, pat very dry, and skip blanching and the ice bath. Assemble and bake as directed.
Storage & Make-Ahead
Make ahead: Assemble the beans and sauce in a metal baking pan up to 24 hours in advance, leaving off both toppings. Cool promptly and refrigerate, covered, within 2 hours. Prepare the buttered panko separately and refrigerate in an airtight container. Fry the shallots up to 1 day ahead, cool completely, and store in an airtight container at cool room temperature.
Bake from refrigerated: Heat the oven to 375°F (190°C). Cover the casserole with foil and bake for 30 minutes. Uncover, add the buttered panko, and bake for 10–15 minutes, until bubbling and golden. Add the shallots and bake for 5 minutes more. The center should reach 165°F (74°C). Rest for 10 minutes before serving. Use a metal pan for this method rather than moving a cold glass or ceramic dish directly into a hot oven.
Store leftovers: Refrigerate in an airtight container within 2 hours and enjoy within 3–4 days. Reheat covered at 350°F (175°C) for 20–25 minutes, then uncover for 5–10 minutes to help the topping crisp. Heat the center to 165°F (74°C). Small portions can be microwaved, although the toppings will soften. Freezing is not recommended for the best texture because the dairy sauce may separate.
Nutrition (per serving)
Calories: 305 kcal | Carbs: 27g | Protein: 7g | Fat: 20g | Saturated Fat: 10g | Fiber: 4g | Sugar: 10g | Sodium: 620mg | Cholesterol: 45mg
Nutrition is estimated for 1/8 of the casserole, assuming approximately 3 tablespoons of frying oil are absorbed across the full batch. Actual values vary with ingredients, salt absorption, and frying technique.
