Homemade French Onion Soup with Bone Broth
Inside: How to make French onion soup with bone broth (homemade or store-bought) and the caramelization and garlic-toast details that make this onion soup recipe a winner.
French Onion Soup. Crocks filled with sweet caramelized onion, rich, sherry-kissed stock, topped with a crusty baguette and reams of melty Gruyère. This is one of life’s true pleasures. It’s also more straightforward than you’d think, and every bit as satisfying to make as it is to eat. The secret is the broth: I make mine from scratch in the Instant Pot, so what used to be a two-day process takes about ninety minutes. But if a homemade batch isn’t happening this week, a good quality store-bought bone broth works too — don’t let that be the reason you skip this recipe for something else.

French onion soup is squarely in my wheelhouse; I’m half French, after all, and my Mom, and both her parents were fine French cooks. Check out my grandmother’s French Pâté Recipe or Boeuf Bourguignon if you don’t believe me.
The main ingredient list for French onion soup is short and non-negotiable, so each one needs to be top-notch to pull its own weight.
- Onions need proper caramelization, and to get there, they have to cook down. You’ll need more than you think.
- Beef bone broth is the backbone of the soup, and my Instant Pot Bone Broth is simmered specifically to pull collagen from the bones, giving the soup real body instead of a thin, watery finish. In a pinch, store-bought is fine.
- French Bread needs the right amount of toasty crunch before assembly, or it turns to mush in the broth.
- Cheese is what comes to mind when you think of this recipe. Traditionally, French onion soup uses Gruyère, and there’s no such thing as too much.
Why you’ll love this recipe:
- The broth is doing the heavy lifting. Homemade bone broth — or a good store-bought version — gives this soup real body.
- Crunchy toasts. Toast one side, then the other, until crisp enough to create a barrier that holds up against the broth and melty cheese long enough to get your spoon into without turning to mush.
- An avalanche of Gruyère, not a sprinkle. This isn’t the place to go light on cheese.
- Make-ahead friendly. Freeze a batch of caramelized onions and a batch of broth ahead of time, and this goes from a weekend project to a weeknight dinner.
Ingredients for French onion soup:
- Unsalted butter – the base fat for caramelizing the onions. Using unsalted gives you full control over salt once the broth and cheese are in the mix.
- Onions – Use any variety, from plain yellow onions to sweet onions; red onions work too. Slow caramelization will turn even the most eye-stinging allium sweet. Read this post on how to caramelize onions.
- Vegetable or canola oil – added alongside the butter to raise its smoke point, so the onions can cook low and slow for the better part of an hour without the butter scorching.
- Kosher salt – goes in early with the onions to draw out moisture and speed up caramelization.
- Black pepper – a background note, added at the same time as the salt.
- White wine – deglazes the pot after the onions caramelize, picking up all the browned bits stuck to the bottom before the broth goes in.
- Beef bone broth – the backbone of the soup. Homemade is worth the extra step for the body it gives the broth, though a good quality store-bought bottle works too.
- Fresh Thyme – tied into a bundle with kitchen string, so you can pull it all out at once before serving.
- Bay leaves – simmered with the broth for a background layer of flavor, then discarded.
- French Baguette – sliced into rounds and toasted on both sides before it ever sees the broiler, so it holds up under the broth instead of going soft.
- Garlic clove (optional) – rubbed over one side of the toasted bread for a hit of flavor without the raw garlic bite.
- Sherry – a small splash added to each bowl right before broiling. This is what makes French onion soup taste like French onion soup — don’t skip it.
- Gruyère cheese – buy the block and grate it yourself.
Step-by-step instructions:

- Heat a Dutch oven over medium heat and add the butter and vegetable oil. Add the sliced onions and simmer with the lid on for about 15 minutes, stirring occasionally, until they start to soften.

2. Stir in the kosher salt and black pepper and place the lid on the pot so it’s slightly askew, and steam can escape. Continue to simmer for 45-50 minutes, stirring every 8-10 minutes to prevent sticking and promote caramelization. Turn the heat down if the onions are browning too quickly.

3. Deglaze with the white wine and simmer until most of the liquid has evaporated.

4. Slice a baguette into ½” rounds and transfer to a wire rack set over a baking sheet. Bake for 4-5 minutes at 400°F, then flip and cook for 3-4 more minutes, or until crisp and lightly toasted. Rub one side lightly with a whole garlic clove.

5. Add a bundle of thyme to the onions and stir in the beef broth. Simmer for 10-15 minutes.

6. Remove the thyme and bay leaf.

7. Add a teaspoon of sherry to each of four ovenproof crocks. Ladle the soup into the bowl and place on a baking sheet.

8. Rest 1-2 toasts on top of each bowl and divide the cheese amongst them.

9. Broil for 2-5 minutes until the cheese is melty and the edges of the bread are crusty. Serve.
Pro-Tips:
- Batch and freeze the onions. Caramelizing takes the same hands-on time whether you’re making one batch or three. Make extra, portion it into containers, and freeze — future you gets French onion soup on a weeknight instead of a weekend project.
- Batch and freeze the broth too. The same trick works for the bone broth — portion it into 4-cup containers and freeze. With both the onions and the broth already done, this soup comes together in about 30 minutes.
- Use oven-safe crocks or bowls. Regular bowls can crack or shatter under the broiler. No French onion soup crocks on hand? Look for anything labeled oven-safe or broiler-safe.
- Don’t rush the caramelization. Real caramelized onions take 45 to 60 minutes, not 15. If they’re browning too fast, turn the heat down rather than pushing through it — burnt onions turn bitter, and there’s no fixing that once they’re in the pot.
- Watch the broiler the whole time. Gruyère goes from melted to burnt in under a minute. Stay at the oven for this step; don’t wander off.

Swaps and Variations
- No sherry on hand? A splash of cognac or brandy works the same way; add it to the bowl right before broiling. In a pinch, leave it out entirely—the soup will still taste good, just a shade less complex.
- No Gruyère? Swiss or Emmental is the closest substitute. A mix of Swiss and provolone or mozzarella melts well too, if you want a stretchier topping.
- Want a vegetarian version? Swap the beef bone broth for a rich vegetable broth instead. It won’t have the same collagen-driven body, but the caramelized onions and toasted cheese topping still carry the dish.

FAQs
Yes — and it’s more than a swap; it’s an upgrade. Bone broth is simmered to pull collagen out of the bones, giving the finished soup real body instead of a thin, watery broth. Homemade is worth the extra step, but a good quality store-bought bone broth works too.
Beef broth is simmered briefly, mostly for flavor. Beef stock simmers longer and usually includes bones, which pulls out more collagen and body. Bone broth goes further still—it’s simmered the longest, often 12 to 24 hours, to extract as much collagen as possible (note: my instant pot version doesn’t take that long). For a soup where the broth is the star, bone broth or a well-made stock will always outperform a quick broth.
Not as written — the broth is beef-based. For a vegetarian version, swap in a vegetable broth instead; see the Swaps and Variations section above.
A little. It’s not simmered into the broth — instead, a raw garlic clove gets rubbed over one side of the toasted baguette rounds before they go under the broiler, so you get a hint of it without overpowering the onions.

Make ahead:
- Caramelize the onions and make the broth up to a few days ahead (see the Pro-Tips above)
- Keep it refrigerated and add the bread and cheese fresh, right before broiling.
Storage:
- Store the soup base (without bread and cheese) in an airtight container in the fridge for up to 4 days.
- A fully cooked French onion soup with cheese and crostini on top doesn’t store or reheat well, as the cheese and crostini lose their texture and get mushy in the soup.
Reheating:
- Reheat the soup base on the stovetop or in the microwave until hot, then ladle into oven-safe crocks, top with freshly toasted bread and cheese, and broil as directed.
Freezing:
- This one freezes well. Unlike a cream-based soup, there’s no dairy in the broth itself to split or turn grainy — just onions, broth, wine and aromatics.
- Freeze the soup base in an airtight container for up to 3 months, thaw in the fridge overnight, then reheat, top, and broil as usual.

Nutritional Benefits of Real Bone Broth:
Real bone broth is made from parts of the animal we typically throw away (bones, marrow, joints), and it’s slow-simmered for 12-24 hours.
Animal bones contain collagen, and the long cooking process breaks it down into a more digestible form: gelatin. It’s the gelatin that contains many amino acids like glutamine, which helps repair your gut lining, detox your liver, and reduce joint inflammation.
Most boxed beef broths on the shelf don’t actually contain bones — check a label sometime; it’s mostly salt and caramel color. That’s fine for a quick weeknight soup where broth is a background note, but French onion soup puts the broth front and center, so it’s worth the extra step. A homemade batch gives you real body from the collagen, and you control the sodium instead of the label controlling it for you.
More soup recipes you’ll love:
Homemade French Onion Soup
SPECIAL EQUIPMENT:
- Dutch Oven
- 4 oven-safe bowls or crocks
INGREDIENTS:
- 3 tablespoons unsalted butter
- 3 large sweet onions about 2 pounds peeled and thinly sliced
- 2 teaspoons vegetable oil or canola oil
- ¾ teaspoon kosher salt
- ¼ teaspoon black pepper
- 1 cup white wine
- 4 cups Beef Bone Broth
- 8 sprigs thyme
- 2 bay leaves
- 1 baguette sliced into ½" rounds
- 1 garlic clove optional
- 4 teaspoons sherry
- 4 ounces Gruyère cheese grated
DIRECTIONS:
- In a large Dutch oven over medium heat, melt 3 tablespoons unsalted butter and 2 teaspoons vegetable oil together. Add 3 large sweet onions about 2 pounds5 and cook for 15 minutes, stirring occasionally, until softened.
- Stir in ¾ teaspoon kosher salt and ¼ teaspoon black pepper. Place the lid askew on the pot and continue to cook for an additional 45-50 minutes, stirring occasionally until they onions are caramelized. Moderate the heat if the onions are browning too quickly.
- Add 1 cup white wine and simmer until most of the liquid has evaporated, about 10-15 minutes. Tie 8 sprigs thyme with a kitchen string into a tight bundle. Add the thyme, 2 bay leaves and 4 cups Beef Bone Broth. Simmer for 15 minutes.
- Meanwhile, preheat the oven to 400°. Slice 1 baguette into ½" thick rounds and place on a baking sheet. Bake the bread for about 4-5 minutes, then flip the slices and cook for an additional 3-4 minutes, until crisp and lightly browned. Lightly rub 1 garlic clove over one side of the toasts (don't go overboard–the toasted bread acts like a microplane against a garlic clove).
- Turn up the oven to broil.
- Remove the thyme and bay leaves and discard. Add a teaspoon of sherry to each of 4 ovenproof crocks or bowls. Ladle the soup into the bowls and place on a baking sheet. Rest 1-2 toasts on top of each bowl of soup, depending on size (garlic side up), and divide 4 ounces Gruyère cheese over the bowls.
- Broil for 2-5 minutes until the cheese is melty and the edges of the bread are crisp. Serve.
NOTES:
- You can make and freeze caramelized onions ahead of time..
- Store the soup base (without bread and cheese) in an airtight container in the fridge for up to 4 days.
- Reheat the soup base on the stovetop or in the microwave until hot, then ladle into oven-safe crocks, top with freshly toasted bread and cheese, and broil as directed.
- Don’t reheat leftovers that already have the bread and cheese on — the bread turns soggy, and the cheese doesn’t melt the same way twice.
- You can freeze the onion soup base for up to 3 months in a freezer-safe container.
- Thaw before reheating, then assemble the soup with bread and cheese before broiling.
NUTRITION:
Nutritional Disclaimer
Nutritional information is an estimate only and is provided as a courtesy. Values are calculated automatically based on the ingredients and quantities in each recipe and may vary depending on specific brands, exact measurements, and substitutions made. For precise nutritional guidance, especially if you have a medical condition or dietary restriction, please consult a registered dietitian or run the ingredients through your own nutrition calculator.Pin “French Onion Soup” For Later!



This looks fabulous! Can we pretend the bone broth’s health benefits offset the extra pieces of baguette I’m going to devour?
Of course.
Great idea on freezing extra carmelized onions. This saves time!
I am having a senior moment but i have made this recipe several times & my friends request it for
Get togethers, but where does the garlic come in.
Again. I m seventy. I might have missed it
The soup is so yummy it doesnt need it
You’re right Rona! — I missed it in the instructions — thank you for pointing that out. I rub a clove of garlic lightly over the toasts before sprinkling with gruyere. It’s optional if you’re not a garlic fan. I’ve fixed the recipe. Thanks again!
French Onion Soup is one of my favorites and yours looks sooo good.
It’s one of my favorites too!
French onion soup is my FAVORITE soup! If only I had time to caramelize those onions all the time.. I’d probably eat this every day! LOVE!
Actually, I will make large batches of caramelized onions and freeze them in individual containers so they’re ready whenever I need them.
Oh that’s a fabulous idea!
This looks amazing! I haven’t had a good bowl of French onion soup since I was last in Paris. This looks like a much cheaper option!
LOL – definitely cheaper than flying to Paris, but Paris is definitely worth it!
I hated french onion soup growing up, but now I can’t get enough of it! I’ve got some gf bread going stale it would make perfect french onion croutons!
Absolutely! I know what you’re cooking this weekend!
French onion soup really is one of my favorite things ever and this recipe looks to-die-for!
I appreciate that Kristine! Enjoy!
Looks absolutely delicious Lisa. I could use chicken broth instead of the beef broth though, right?
I suppose you could, but to be honest, French onion soup is meant to have deep, rich beefiness to go with the onions. Of course, you’re a food blogger – so maybe you’ll make up a whole new MUST MAKE soup!
I can’t even deal with how much I want a bowl of French Onion Soup now – you’ve given me a major craving!
It had been a while since I’d made one, but it was worth the wait!
French onion soup is a favorite. Any suggestions for making it alcohol free?
Hmmm – well, the alcohol in the wine is pretty much cooked off and there’s only half a teaspoon of sherry in each bowl — but they really do add the dimension to this soup that Makes It! Otherwise I might add more beef stock and perhaps add a little sugar and let it simmer for 20 -25 minutes.
I absolutely love the decadence of a good French Onion Soup – the cheese and the bread on top – yumm! Gorgoeus pictures as usual, Lisa!
Thank you, Tina! This one was harder to shoot than usual!
My goodness that looks and sounds absolutely amazing! I don’t ever believe I’ve had the pleasure, yet, of tasting French Onion soup. I must remedy this!
You ABSOLUTELY MUST have a bowl of French Onion Soup. It’s non-negotiable!
I love French onion soup, and this bone broth sounds wonderful! I appreciate the explanation about bone broth too, because I’ve heard about it, but never knew the difference between that and regular broth.
There’s a huge difference between canned broth at the grocery store and the real stuff!
There are not to many things that I enjoy more then a nice serving of good FO soup. The sherry is the bomb!
Absolutely!
I just love a good French onion soup. Isn’t it amazing what incredible flavor can come from simple ingredients. I love that you add a splash of sherry… so good
The sherry is essential!
French onion soup is my favorite! I love love love it! This broth looks like a great addition too!
Katrina, as I was writing this post — I was thinking of you!