Caramelized Onion Soup is a warm and comforting bowl that feels like a gentle hug on a chilly day. The star of the show is the sweet, golden caramelized onions that slowly cook down to bring out their rich, natural sweetness. Combined with a savory broth and topped with melty cheese and crispy bread, this soup is simple yet full of cozy flavors.
I love making caramelized onions slowly, stirring them patiently while the aroma fills the kitchen—that sweet smell always makes me smile. It’s a little bit of effort that pays off big time because those soft, deep-flavored onions really make this soup special and worth the wait. I find it’s the perfect dish to make when I want something comforting but not complicated.
My favorite way to enjoy this soup is right out of the pot with a slice of toasted bread piled with gooey melted cheese on top. It’s such a satisfying treat, especially on a cool evening. Whenever I serve it to friends, they’re always surprised by how simple ingredients come together to make something so delicious and warm. It’s definitely a go-to for cozy nights in.
Key Ingredients & Substitutions
Yellow Onions: These are best for caramelizing because they have a perfect balance of sweetness and flavor. If you can’t find yellow onions, sweet onions like Vidalia work well too.
Butter & Olive Oil: Using both adds richness and helps the onions cook slowly without burning. If dairy-free, swap butter for more olive oil or a vegan butter alternative.
Broth: Beef broth is classic for depth, but vegetable broth makes it lighter and vegetarian-friendly. For a quick fix, store-bought broth works just fine.
Gruyère Cheese: This melts beautifully and adds nutty richness. If you can’t get Gruyère, Swiss or mozzarella are good substitutes.
Baguette: A crusty bread is key to hold up in the soup. French or sourdough bread also works well.
How Do You Perfectly Caramelize Onions Without Burning Them?
Patience is everything here! The goal is to slowly cook the onions over medium-low heat so their natural sugars break down and turn golden brown.
- Heat butter and oil in a heavy pan over medium-low.
- Add onions, salt, and sugar to draw out moisture and speed caramelization.
- Stir every 5-7 minutes to prevent sticking and burning.
- If onions start sticking or browning too fast, lower the heat.
- This process can take 45-60 minutes but results in rich, deep flavor.
Taking your time here is worth it; this step builds the flexible, delicious base of the soup. I always find the smell of slowly caramelizing onions is a great indication you’re on the right track!

Equipment You’ll Need
- Large heavy-bottomed pot or Dutch oven – perfect for cooking onions evenly without burning.
- Wooden spoon or heatproof spatula – great for stirring the onions gently and scraping the pot.
- Chef’s knife and cutting board – for slicing onions thinly and safely.
- Oven-safe soup bowls or crocks – to bake the soup with melted cheese on top.
- Baking sheet – for toasting the bread slices before adding them to the soup.
Flavor Variations & Add-Ins
- Use shiitake or cremini mushrooms for a deeper umami flavor and extra texture.
- Add a splash of sherry or brandy instead of white wine to bring a warmer note.
- Swap Gruyère with mozzarella or fontina for a milder, creamier cheese topping.
- Throw in fresh or dried rosemary in place of thyme for a fragrant twist.
Caramelized Onion Soup
Ingredients You’ll Need:
For the Soup:
- 6 large yellow onions, thinly sliced
- 3 tablespoons unsalted butter
- 2 tablespoons olive oil
- 1 teaspoon salt
- 1 teaspoon sugar
- 4 cloves garlic, minced
- ½ cup dry white wine (optional)
- 8 cups beef or vegetable broth
- 2 tablespoons all-purpose flour (optional, for thickening)
- 1 bay leaf
- 1 teaspoon fresh thyme leaves, plus extra for garnish
- Salt and freshly ground black pepper, to taste
For the Topping:
- 1 baguette, sliced
- 2 cups grated Gruyère cheese (or Swiss cheese)
Time Needed
This recipe takes about 15 minutes of preparation plus 45 minutes to 1 hour for caramelizing the onions slowly, and an additional 30 minutes to simmer the soup. Toasting the bread and broiling the cheese adds about 10 more minutes. Plan for roughly 1 hour and 45 minutes to enjoy this hearty and comforting soup.
Step-by-Step Instructions:
1. Caramelize the Onions:
Heat the butter and olive oil over medium-low heat in a large heavy pot or Dutch oven. Add the sliced onions with salt and sugar, stirring well to coat. Let the onions cook slowly, stirring occasionally, for 45 to 60 minutes until they turn deep golden and sweet. Keep an eye to avoid burning by lowering heat if necessary.
2. Build the Soup Base:
Add minced garlic and cook for a minute more until fragrant. Pour in the white wine (if using) and scrape the browned bits off the bottom, letting the wine reduce for about 5 minutes. Sprinkle flour over the onions and stir well to mix, cooking 1-2 minutes to remove the raw taste.
3. Simmer the Soup:
Pour in the broth, add the bay leaf and thyme leaves, and bring everything to a simmer. Lower the heat and cook gently for 30 minutes to blend the flavors. Season with salt and freshly ground pepper. Remove the bay leaf before serving.
4. Prepare the Bread and Cheese:
While the soup simmers, preheat your oven to 375°F (190°C). Place the baguette slices on a baking sheet and toast them lightly for about 5 minutes, flipping halfway through.
5. Serve and Broil:
Ladle the hot soup into oven-safe bowls. Top each bowl with one or two toasted baguette slices and sprinkle generously with grated Gruyère cheese. Put the bowls on a baking sheet and place them under the broiler for 3 to 5 minutes or until the cheese melts, bubbles, and turns golden brown.
6. Garnish and Enjoy:
Carefully remove from the oven, garnish with fresh thyme sprigs, and serve immediately. Enjoy your delicious homemade caramelized onion soup!
Can I Use Frozen Onions for This Soup?
It’s best to use fresh onions for caramelizing since frozen onions release extra water, which can make caramelizing harder. If you only have frozen, thaw and drain them well before cooking.
How Can I Make This Soup Vegetarian?
Simply use vegetable broth instead of beef broth, and make sure your cheese is vegetarian-friendly. This swap keeps the soup rich and flavorful without meat.
Can I Make the Soup Ahead of Time?
Yes! Prepare the soup and refrigerate it for up to 3 days. When ready to eat, reheat gently on the stove and add the toasted bread and cheese just before serving.
What’s a Good Substitute for Gruyère Cheese?
Swiss cheese or mozzarella are great alternatives that melt well and offer mild flavor if you can’t find Gruyère.



