French Onion Soup
intro
Deeply savory caramelized onion broth topped with crusty bread and bubbly melted Gruyère, a timeless French bistro comfort food ideal for cold days.
Ingredients
Steps
Melt the Butter, Add Onions
Place a heavy-bottomed Dutch oven over medium-low heat, add 60g unsalted butter and 15ml olive oil, and heat for 2 minutes until butter is fully melted and foaming subsides. Add all 1kg of thinly sliced yellow onions and 4g granulated sugar, stirring to coat every onion slice evenly in the fat.
Caramelize the Onions
Cook the onions, stirring thoroughly every 5 minutes to prevent sticking or burning, for 45 to 50 minutes over steady medium-low heat. Lower heat slightly if onions brown too quickly; finished onions should be deep amber-gold, soft and jammy, with no blackened crispy edges.
Deglaze the Pot with Sherry
Increase stovetop heat to medium, pour in 120ml dry sherry, and use a wooden spoon to scrape all the dark brown, flavorful fond bits from the bottom of the pot. Simmer the sherry for 3 minutes until reduced by half, releasing a nutty, sweet wine aroma.
Add the Broth, Simmer Gently
Pour in 1.5L low-sodium beef broth, add 4 fresh thyme sprigs and 1 bay leaf, and bring the liquid to a gentle boil over medium-high heat (about 6 minutes). Reduce heat to low, partially cover the pot, and simmer for 15 minutes to meld flavors. Season with 5g kosher salt and 2g freshly ground black pepper, then remove and discard the thyme stems and bay leaf.
Preheat the Broiler, Ladle Soup
Set your oven to high broil (260°C / 500°F) and position an oven rack 15cm (6 inches) below the heating element. Ladle hot soup into 4 oven-safe ceramic soup crocks, filling each to 1cm (½ inch) below the rim. Top each crock with one 2.5cm thick day-old baguette slice, pressing lightly so the bread soaks up a thin layer of broth.
Top the Toasts with Gruyère
Divide 220g of freshly grated Gruyère evenly across the 4 baguette toasts (about 55g per serving), spreading the cheese to cover the bread fully and drape slightly over the crock edges to prevent burnt bread. Broil for 3 to 4 minutes, watching constantly, until cheese is fully melted, bubbly, and dotted with golden-brown spots. Remove from oven and let rest 2 minutes before serving.
Tips
2.Use day-old, slightly stale baguette for the topping: fresh soft bread will turn soggy quickly under the cheese, while stale bread holds its texture and soaks up just the right amount of broth.
3.Stay within arm’s reach of the oven while broiling: the high broiler heat can turn perfectly golden, bubbly cheese to charred black in as little as 30 seconds.

OMG this was the best French onion soup I’ve ever made at home! I was so intimidated by caramelizing the onions but the step-by-step tips made it totally foolproof. Served it for Sunday family dinner and my husband and kids loved it so much they practically licked the bowls clean. 10/10 will make again all fall and winter!
Super solid recipe! Cook time was pretty spot on for me, though I burned the first batch of onions because I got distracted watching the football game lmao. The gruyere toast on top is a total game changer, though — I added a little extra parmesan because I’m a cheese fiend. Only knock is I wish it noted how low to keep the heat for the onions, I had my burner a touch too high at first.
Made this for my book club potluck last week and every single person asked for the recipe! It was so rich and cozy, perfect for the random cold snap we had down here. I prepped the onion base the night before to save day-of time and it tasted even better the next day, highly recommend that meal prep hack!
I’ve been making French onion soup for over 40 years and I have to say, this recipe is right up there with my mom’s! The trick of deglazing the pot with a splash of sherry is exactly how we used to make it back in the day. My grandkids go crazy for it every time I make a big batch on cold evenings.
Taste was really good but this was way more work than I expected for soup lol. I’m a broke college student so I used regular Swiss cheese instead of gruyere because it was cheaper, and it still worked okay. Cook time took me closer to 2 hours because I’m slow at chopping onions, my eyes were burning so bad I had to take three breaks.
Ran this as the special at my small cafe over the weekend and we sold out in 2 hours! People were raving about how deep the onion flavor was, no sad watery broth here. I added a tiny sprig of fresh thyme to each bowl before topping with the cheese toast and it elevated it so much.
Just finished making this for date night and my partner said it’s better than the version we got at that fancy French bistro downtown for our anniversary! The cheese got all bubbly and crispy on the edges exactly how I like it. SO good, I’m already planning to make another batch next weekend.
Really great base recipe! I like my soup a little more savory so I added a splash of Worcestershire sauce and a pinch of black pepper to the broth, and it hit exactly what I was craving. Only reason it’s not 5 stars is I felt like the onion quantity was a little misleading — they cook down so much I wish I’d doubled them!
Made this for our neighborhood fall block party and it was such a hit! I kept it warm in the slow cooker after finishing the stovetop steps and it stayed perfect the whole night. A couple people asked if I used store bought broth and they couldn’t believe it was just regular beef broth from the grocery store, the flavor is that deep.
As someone who’s gluten free I was so happy this recipe was easy to adapt! I just used a gluten free baguette for the cheese toasts and didn’t change anything else, and you couldn’t even tell the difference. My whole family (who eats regular gluten) devoured it, no complaints at all.
I was worried this would be too fussy for a weeknight dinner but I broke up the steps over the weekend! Caramelized the onions and made the broth on Sunday, then just reheated it and broiled the cheese toasts on Monday after work. Took 10 minutes of effort the night of, perfect for busy school nights.
Really delicious! I added a tiny pinch of cayenne pepper to give it a little subtle heat, which went so well with the sweet onions and melty cheese. My only note is that the broiler step goes so fast — I almost burned the cheese because I turned away for 30 seconds, oops.
This was the first fancy soup I’ve ever made from scratch and I’m so proud of how it turned out! I was convinced I’d mess up the caramelized onions but I just took it slow and followed the directions exactly, and they came out perfect. My roommate said it tastes like restaurant quality, I feel like a real chef now!