I’m excited to share my Homemade French Onion Soup, with sweet caramelized onions in a deeply flavored broth topped with toasted bread and a generous crown of melted cheese that makes this restaurant classic surprisingly simple to recreate.

I used to think French onion soup was only for fancy restaurants, then I made this Homemade French Onion Soup and my whole idea changed. The slow sweet gold of yellow onions collapses into something almost candy like, and when you crown the bowl with bubbling Gruyere cheese it feels like tiny rebellion, like getting the best seat in the bistro without dressing up.
I wont pretend I never burn a batch, I do, and sometimes it’s too salty, but those mistakes taught me more than recipes. It makes me curious every time, you won’t believe how deep and simple it tastes.
Ingredients

- Yellow onions: sweet, high in fiber and antioxidants, they give caramelized sweetness and savory depth.
- Unsalted butter: adds rich mouthfeel, fats and calories, helps browning, little protein though.
- Olive oil: heart healthy monounsaturated fats, helps caramelization, brings a subtle fruity note.
- Beef broth: gives savory umami and some protein, but can be high in sodium so watch salt.
- Gruyere cheese: melts into gooey, salty, nutty richness, adds protein and calcium, also lots of calories.
- Baguette: crunchy carb base that soaks up broth, gives texture and extra carbohydrates.
- White wine: brightens the soup with acidity, helps deglaze the pan and adds aromatic notes.
Ingredient Quantities
- 4 large yellow onions (about 3 pounds / 1.4 kg), peeled and thinly sliced
- 4 tablespoons unsalted butter
- 2 tablespoons olive oil
- 1 teaspoon kosher salt
- 1/2 teaspoon freshly ground black pepper
- 1 teaspoon granulated sugar (helps with caramelization)
- 2 tablespoons all purpose flour
- 1/2 cup dry white wine or dry sherry (120 ml)
- 6 cups low sodium beef broth (about 1.4 L)
- 2 bay leaves
- 3 sprigs fresh thyme or 1/2 teaspoon dried thyme
- 2 tablespoons cognac or brandy (optional)
- 1 baguette (about 10 to 12 oz / 300 to 350 g), sliced about 1/2 inch thick
- 8 ounces Gruyere cheese, grated (about 2 cups)
- 1/4 cup grated Parmigiano Reggiano (about 25 g), optional
- Extra butter or olive oil for toasting the bread (optional)
How to Make this
1. Peel and thinly slice 4 large yellow onions (about 3 lb /
1.4 kg) — you want thin-ish slices not paper thin, a sharp knife or mandoline helps but don’t shave them to nothing.
2. In a large heavy pot melt 4 tablespoons unsalted butter with 2 tablespoons olive oil over medium heat, add the sliced onions, 1 teaspoon kosher salt, 1/2 teaspoon freshly ground black pepper and 1 teaspoon granulated sugar; stir to coat and cook until they start to soften, about 10-15 minutes.
3. Turn heat to medium-low and keep cooking the onions low and slow until deeply golden and sweet, 30-45 minutes, stirring every few minutes and scraping up brown bits. If they start to stick or burn, add a tablespoon or two of water, wine or turn the heat down — patience is the trick here.
4. Sprinkle 2 tablespoons all purpose flour over the caramelized onions, stir and cook 1-2 minutes to remove the raw flour taste.
5. Pour in 1/2 cup dry white wine or dry sherry (120 ml) and use a wooden spoon to scrape the browned bits from the pot, simmer until the wine mostly evaporates, about 2-3 minutes.
6. Add 6 cups low sodium beef broth (about
1.4 L), 2 bay leaves and 3 sprigs fresh thyme or 1/2 teaspoon dried thyme, bring to a simmer then reduce heat and gently simmer 20-30 minutes to let flavors marry; taste and adjust seasoning with salt and pepper, remove bay leaves and thyme sprigs.
7. If using, stir in 2 tablespoons cognac or brandy at the end and simmer 1 more minute, then keep the soup warm while you prepare the bread and cheese.
8. Preheat your broiler. Slice 1 baguette into about 1/2 inch thick slices, brush both sides lightly with extra butter or olive oil and toast on a baking sheet until golden, about 3-5 minutes per side.
9. Ladle hot soup into ovenproof bowls, float a toasted baguette slice or two on top, pile on about 8 ounces grated Gruyere (about 2 cups) and sprinkle 1/4 cup grated Parmigiano Reggiano if using; place bowls on the baking sheet and broil until the cheese is melted, bubbly and nicely browned, 2-5 minutes — watch it closely so it doesn’t burn.
10. Remove carefully, let cool 1-2 minutes, garnish with a little thyme if you want, and serve hot. Enjoy the gooey cheesy top and that sweet caramelized onion broth.
Equipment Needed
1. Large heavy-bottomed pot or Dutch oven (5 to 6 qt) — for slow caramelizing and simmering
2. Sharp chef’s knife and a cutting board for slicing onions (a mandoline helps if you’re careful)
3. Wooden spoon or heatproof spatula to stir and scrape up brown bits
4. Measuring cups and measuring spoons for liquids and seasonings
5. Ladle for serving the soup into bowls
6. Ovenproof bowls or ramekins that can go under the broiler
7. Baking sheet to toast the bread and hold bowls under the broiler
8. Cheese grater (box grater or microplane) for Gruyere and Parmigiano
9. Tongs or small spatula to handle the toasts and move bowls safely
FAQ
Easy Homemade French Onion Soup Recipe Substitutions and Variations
- Beef broth: swap for low sodium chicken broth if you want a lighter soup, or use a rich vegetable or mushroom broth to keep it vegetarian; a splash of soy sauce or a spoon of miso helps replace the beefy umami.
- Gruyere cheese: use Emmental or Comté for a very similar nutty melt, or go with fontina or provolone if you prefer a milder, gooey top; mix in some grated Parm to keep the savory edge.
- Baguette: any sturdy crusty loaf works, like sourdough, ciabatta, or a country boule; for gluten free use toasted GF slices or thick crackers in a pinch.
- Cognac or brandy: replace with dry sherry, Marsala, or a splash of white wine, or just skip it and add a teaspoon of balsamic or a pinch of sugar to give the broth more depth.
Pro Tips
– Use a wide heavy pan and be patient. Let the onions spread out so they brown instead of steam, turn the heat low and walk away sometimes, stirring every few minutes. If they look like they might scorch, add a tablespoon of water or wine, not oil, and scrape the brown bits up, they’re where the flavor lives.
– Tiny pinch of baking soda will speed caramelization and give deeper color, but don’t go crazy or it’ll taste soapy. Start with less than 1/8 teaspoon for this batch, you’ll be surprised how much faster the onions soften and darken.
– Make the bread and cheese count. Toast the slices until they’re crisp, rub a cut clove of garlic over them if you like, and grate the Gruyere fine so it melts evenly. If you want a better crust, broil close to the element but watch it like a hawk, it goes from perfect to burnt fast.
– Do this ahead when you can. Caramelized onions keep and actually get better in the fridge for a day or two, and the soup flavors meld overnight. Reheat gently, finish with brandy or wine at the end and assemble just before broiling so the bread stays pleasantly chewy, not soggy.
Easy Homemade French Onion Soup Recipe
My favorite Easy Homemade French Onion Soup Recipe
Equipment Needed:
1. Large heavy-bottomed pot or Dutch oven (5 to 6 qt) — for slow caramelizing and simmering
2. Sharp chef’s knife and a cutting board for slicing onions (a mandoline helps if you’re careful)
3. Wooden spoon or heatproof spatula to stir and scrape up brown bits
4. Measuring cups and measuring spoons for liquids and seasonings
5. Ladle for serving the soup into bowls
6. Ovenproof bowls or ramekins that can go under the broiler
7. Baking sheet to toast the bread and hold bowls under the broiler
8. Cheese grater (box grater or microplane) for Gruyere and Parmigiano
9. Tongs or small spatula to handle the toasts and move bowls safely
Ingredients:
- 4 large yellow onions (about 3 pounds / 1.4 kg), peeled and thinly sliced
- 4 tablespoons unsalted butter
- 2 tablespoons olive oil
- 1 teaspoon kosher salt
- 1/2 teaspoon freshly ground black pepper
- 1 teaspoon granulated sugar (helps with caramelization)
- 2 tablespoons all purpose flour
- 1/2 cup dry white wine or dry sherry (120 ml)
- 6 cups low sodium beef broth (about 1.4 L)
- 2 bay leaves
- 3 sprigs fresh thyme or 1/2 teaspoon dried thyme
- 2 tablespoons cognac or brandy (optional)
- 1 baguette (about 10 to 12 oz / 300 to 350 g), sliced about 1/2 inch thick
- 8 ounces Gruyere cheese, grated (about 2 cups)
- 1/4 cup grated Parmigiano Reggiano (about 25 g), optional
- Extra butter or olive oil for toasting the bread (optional)
Instructions:
1. Peel and thinly slice 4 large yellow onions (about 3 lb /
1.4 kg) — you want thin-ish slices not paper thin, a sharp knife or mandoline helps but don’t shave them to nothing.
2. In a large heavy pot melt 4 tablespoons unsalted butter with 2 tablespoons olive oil over medium heat, add the sliced onions, 1 teaspoon kosher salt, 1/2 teaspoon freshly ground black pepper and 1 teaspoon granulated sugar; stir to coat and cook until they start to soften, about 10-15 minutes.
3. Turn heat to medium-low and keep cooking the onions low and slow until deeply golden and sweet, 30-45 minutes, stirring every few minutes and scraping up brown bits. If they start to stick or burn, add a tablespoon or two of water, wine or turn the heat down — patience is the trick here.
4. Sprinkle 2 tablespoons all purpose flour over the caramelized onions, stir and cook 1-2 minutes to remove the raw flour taste.
5. Pour in 1/2 cup dry white wine or dry sherry (120 ml) and use a wooden spoon to scrape the browned bits from the pot, simmer until the wine mostly evaporates, about 2-3 minutes.
6. Add 6 cups low sodium beef broth (about
1.4 L), 2 bay leaves and 3 sprigs fresh thyme or 1/2 teaspoon dried thyme, bring to a simmer then reduce heat and gently simmer 20-30 minutes to let flavors marry; taste and adjust seasoning with salt and pepper, remove bay leaves and thyme sprigs.
7. If using, stir in 2 tablespoons cognac or brandy at the end and simmer 1 more minute, then keep the soup warm while you prepare the bread and cheese.
8. Preheat your broiler. Slice 1 baguette into about 1/2 inch thick slices, brush both sides lightly with extra butter or olive oil and toast on a baking sheet until golden, about 3-5 minutes per side.
9. Ladle hot soup into ovenproof bowls, float a toasted baguette slice or two on top, pile on about 8 ounces grated Gruyere (about 2 cups) and sprinkle 1/4 cup grated Parmigiano Reggiano if using; place bowls on the baking sheet and broil until the cheese is melted, bubbly and nicely browned, 2-5 minutes — watch it closely so it doesn’t burn.
10. Remove carefully, let cool 1-2 minutes, garnish with a little thyme if you want, and serve hot. Enjoy the gooey cheesy top and that sweet caramelized onion broth.





















