French onion soup is a bistro classic, the most homey and delicious example of good café cooking. But only a handful of frugal ingredients make up this restaurant favorite. Onions, broth, salt, and butter mingle in a slow magic that transforms them into a wildly luxurious bowl of silky onions and dark broth. If you’ve only eaten French onion soup in restaurants, you’ll be shocked at how easy it is to make in your own kitchen.
Here is a step-by-step recipe for making the best French onion soup you’ve ever eaten. It’s one of the simplest yet most satisfying soups, and one to learn by heart.
The Magic Ingredient: Time
French onion soup is probably the most dramatic example of how time is the magic ingredient in cooking, transforming humble foods into a final dish that is far, far more than the sum of its parts.
With French onion soup, the lengthy cooking time has two phases: Caramelizing the onions slowly and deliberately, and then simmering the broth for a long time with the caramelized onions. Skimping on either side will yield something a little less than the French onion soup of your dreams, but fortunately most of the time is hands-off. You can even do the simmer in a low oven (250°F) or in a slow cooker.
The Best Pot for French Onion Soup
You’ve probably seen a hundred photos of French onion soup served forth from a rustic French country crock, tall and fat-bellied. But that’s not the pot it was cooked in, I can almost guarantee you. The best pot for making French onion soup is one that is even wider than it is deep, with plenty of surface area to help the onions caramelize and broth to evaporate and concentrate.
My favorite pan for this task is a deep 6-quart Le Creuset sauté pan, but a wide Dutch oven or stockpot would also do well.
Simple Is Beautiful (But Herbs Are OK Too)
The beauty of French onion soup is how incredible it tastes even though there are only a few ingredients: onions, salt, pepper, fat, and broth. It doesn’t need anything more.
But you may be tempted to give it a few personal tweaks; I fully support this. I love adding a whole star anise, a bay leaf or two, or a sprig of rosemary. But these aren’t necessary; just like the optional wine and Julia Child’s own suggested finishing splash of brandy, they are fully at the discretion of the cook.
On Cheese & Toast
The cheesy toast, however, is what we all love and desire on our French onion soup — the finishing touch! Leave it off at your peril; your dinner companions may send you back to the kitchen to put it on!
I do, though, have opinions on the cheese and toast served on top of French onion soup. The point, in my world (and in Julia Child’s recipe, which this tutorial is based on) is for the cheese to melt into the soup, making it heartier and more satisfying. The point is not for the cheese to congeal on top of the soup, like pizza toppings. You want finely grated cheese, much of which will disappear into the soup, only to be found in long, melting strands by your spoon.
The toast, likewise, shouldn’t cover the soup, but be a welcome toasty garnish, soaking up the soup and breaking into bites you can actually fit on your spoon.
Now I may be in the minority here; most of The Kitchn editorial staff is firmly on Team Cheese Lid, which is totally fine! If you want a thick, relatively unmelted lid of cheese, grate your cheese very roughly and and add additional layers during the baking process.
But do try it like this, too. There’s quite a lot of cheese in the soup pictured; it just has melted into every delicious bite. Bon appétit!
Yield: Makes 6 to 8 (1-cup) servings
- 2 1/2 pounds yellow onions
- 3 tablespoons unsalted butter
- 2 tablespoons olive oil
- 2 teaspoons kosher salt, plus more as needed
- Freshly ground black pepper
- 1/2 teaspoon granulated sugar
- 8 cups low-sodium beef, chicken, or vegetable broth
- 3 tablespoons all-purpose flour
- 1/2 cup dry white wine (optional)
- 1/4 cup brandy (optional)
- 6 to 8 baguette slices, toasted
- 1 1/2 to 3 cups shredded Gruyère or Parmesan cheese (1/4 to 1/2 cup per serving)
- Minced raw shallot or onion, for garnish
- Chef's knife and cutting board
- 4-quart or larger heavy pan, such as a deep sauté pan or Dutch oven
- Wooden spoon
- Oven-safe bowls or mugs (optional)
- Baking sheet or dish
Halve and peel the onions. Halve each onion through the root. Peel away the skins.
Thinly slice the onions. Thinly slice the onions into half-moons.
Cut the half moon slices in half. Cut the onion slices in half. You should have at least 6 cups of sliced onions. But don't worry too much about quantities with this recipe; if you have an extra onion to use up, throw it in!
Melt the butter with the oil. Place the butter and oil in a Dutch oven or large sauté pan with deep sides over medium-low heat.
Add the onions. After the butter foams up and then settles down, add the onions and stir to combine.
Cover and cook for 15 minutes. Cover the pan, reduce the heat to low, and cook for 15 minutes.
Season the onions. Uncover. The onions should have wilted down somewhat. Stir in the salt, a generous quantity of black pepper, and the sugar (this helps the onions caramelize).
Cook the onions for 40 minutes to 1 hour. Turn the heat up to medium and cook uncovered, stirring every few minutes, until the onions are deeply browned. Turn down the heat if the onions scorch or stick to the pan; the browning doesn't come through burning, but through slow, even caramelization.
Heat the broth. As the onions approach a deep walnut color, heat the broth in a separate pot.
Add the flour. Add the flour to the caramelized onions and cook and stir for about 1 minute.
Add broth and simmer for at least 1 hour. Add the hot broth to the caramelized onions and bring to a boil. If using wine, add this now too. Lower the heat and partially cover the pan. (If you want to add other aromatics such as herbs or spices, do so now.) Cook gently over low heat until the broth is slightly reduced, at least 1 hour.
Taste and season. Taste and season with more salt and pepper if needed. Add a finishing splash of brandy, if desired!
Top with toast and cheese. Arrange a rack in the middle of the oven and heat to 350°F. Divide the soup between small but deep oven-safe bowls. Top each with a slice or two of toasted baguette and sprinkle grated cheese in a thick layer over the bread and up to the edge of the bowl.
Bake for 20 to 30 minutes. Place the bowls on a rimmed baking sheet or in a casserole dish. Bake until the cheese is completely melted, 20 to 30 minutes.
Broil until the cheese is browned. Turn the oven up to broil. Broil until the cheese is browned and bubbling, 1 to 3 minutes. Remove carefully from the oven and let cool for a few minutes before serving on heatproof dishes or trivets. Serve with freshly ground pepper and minced fresh onion or shallot, which provides a welcome bite in contrast to the very sweet and mellow soup.
Gluten-free option: The flour added to the onions gives the soup a little bit of thickness and body, just enough to nudge it beyond broth-with-onions. But it's optional; if you want to keep it gluten-free just omit the flour. Skip the baguette or toast your favorite gluten-free bread instead.
Raw onion garnish: The raw onion or shallot garnish is a really great part of this recipe, in my opinion. It's a classic garnish for French onion soup and it balances the sweet soup with a bit of bite and crunch. Try it!
Make ahead: The soup can be made and refrigerated up to 2 days ahead. Reheat over medium heat before transferring to the oven-safe bowls and baking with the baguette slices and cheese.
Storage: Leftovers can be refrigerated in an airtight container for up to 4 days.
Faith is the Editor-in-Chief of Kitchn and the author of three cookbooks, including the James Beard Award-winning “The Kitchn Cookbook,” as well as “Bakeless Sweets.” This recipe is based on, and adapted from, Julia Child's Soupe à l'Oignon from “Mastering the Art of French Cooking.”