The Ultimate Homemade Green Bean Casserole
Tender green beans in a creamy mushroom sauce with crisp fried shallots make a deeply savory casserole from simple fresh ingredients.

Ingredients
- 1 pound shallots, peeled and sliced 1/8 inch thick on a mandoline
- 2 cups canola oil
- Kosher salt
- 1 1/2 pounds white button mushrooms, rinsed and spun dry in a salad spinner
- 2 teaspoons soy sauce
- 2 teaspoons lemon juice from 1 lemon
- 2 cups low-sodium store-bought or homemade chicken stock
- 1 1/2 cups heavy cream
- 2 tablespoons butter
- 2 cloves garlic, finely minced or grated on a Microplane grater
- 1/4 cup flour
- Freshly ground black pepper
- 2 pounds green beans, ends trimmed, cut into 2-inch segments
Directions
- Put the shallots and oil in a wok or a medium nonstick saucepan. The oil should almost cover them, with the shallots just barely rising above the surface. Set the pan over high heat and cook for about 12 minutes, stirring often, until the shallots have softened all the way through. While they cook, cover a rimmed baking sheet with 6 layers of paper towels. Keep cooking for about 8 minutes more, stirring the whole time, until the shallots turn light golden brown. Right away, pour everything into a fine-mesh strainer positioned over a heat-proof bowl or saucepan. Reserve the shallot oil. The yield should be about 2 cups of fried shallots.
- Move the fried shallots onto the paper towels. Use the top towel to roll the shallots onto the next layer, then pat them with that first towel to take off extra oil. Do this 4 more times, shifting the shallots from towel to towel, until only one paper towel remains. Salt them generously. Leave the shallots to cool fully, about 45 minutes. After cooling, pack them in a sealed airtight container. The shallots can be prepared up to 1 month ahead.
- Use the underside of a large skillet to press the mushrooms until they break into 1/4- to 1/2-inch pieces. Chop them roughly into bits about 1/8 to 1/4 inch. Set them aside.
- In a medium bowl or a 1-quart liquid measuring cup, stir together the heavy cream, chicken stock, lemon juice, and soy sauce.
- Pour 2 tablespoons (30ml) of the reserved shallot oil into a 12-inch nonstick skillet, keeping the rest in an airtight container to use another day, and add the butter. Put the skillet over high heat; once the butter has melted and the foam has settled, add the mushrooms. Cook, stirring now and then, until the moisture cooks off and the mushrooms start to sizzle, 6 to 10 minutes.
- Turn the heat down to medium-high. Stir in the garlic and cook for about 30 seconds, stirring constantly, just until it smells fragrant. Add the flour and cook, still stirring, until it takes on a pale golden-blond color, 1 to 2 minutes. Keep whisking as you pour in the cream mixture.
- Bring the sauce to a boil, then lower it to a simmer and cook for about 5 minutes, until it lands somewhere between pancake batter and heavy cream in thickness. Season to taste with salt and pepper.
- Move an oven rack to the lower-middle position, then heat the oven to 350 degrees F (180 degrees C). Add 1/4 cup (48g) kosher salt to 1 gallon (3.8L) water and bring it to a boil over high heat. For an ice bath, set out a large bowl holding 2 quarts (1.9L) water and 1 quart ice cubes.
- Drop the green beans into the boiling water and cook about 5 minutes, until they are tender but still bright green. Pour them into a colander in the sink, then move them at once into the ice water and leave them until fully chilled. Drain the green beans and set them aside.
- Fold together the green beans, mushroom sauce, and 1 cup fried shallots. Spoon the mixture into a rectangular baking dish measuring 9- by 13-inch, or an oval baking dish measuring 10- by 14-inch. Bake for 15 to 20 minutes, until the casserole is hot and bubbling. Scatter the remaining cup of fried shallots over the top and serve.