Ingredients
4 tablespoons unsalted butter provides fat for sautéing and a rich mouthfeel
5 large yellow onions, thinly sliced the star ingredient; they caramelize into the soup’s sweet, savory base
1 teaspoon salt draws moisture from onions and seasons the base
1 teaspoon granulated sugar helps with caramelization and browning
2 cloves garlic, minced adds aromatic depth and savory flavor
1/2 cup dry red wine (such as Merlot or Pinot Noir) deglazes the pan and adds acidity and depth; can be omitted for alcohol-free versions
32 ounces low-sodium beef broth provides robust umami and a meat-forward base
24 ounces low-sodium chicken broth lightens and balances the beef broth for a harmonious stock blend
1 tablespoon Worcestershire sauce adds concentrated savory, slightly tangy umami
2 sprigs fresh thyme aromatic herb that pairs perfectly with caramelized onions
1 bay leaf adds subtle herbal complexity during simmering
1/2 tablespoon balsamic vinegar brightens and deepens the finished soup
Additional pinch of salt and freshly ground black pepper to taste final seasoning adjustments
5 slices of French bread, each about 1-inch thick sturdy toasts that hold the cheese and soak up broth without collapsing
2 tablespoons olive oil for brushing and toasting the bread
1 1/2 cups shredded Gruyere Swiss cheese, room temperature melts beautifully and gives classic nutty flavor
1/4 cup shredded Mozzarella cheese, room temperature adds stretchy meltiness
2 tablespoons finely grated Parmesan cheese, room temperature provides salty, savory finish and browning
Instructions
1-First Step: Mise en place Gather and measure everything before you start. Thinly slice 5 large yellow onions (about 1/8-inch thick) so they cook evenly. Mince 2 garlic cloves, measure broths, wine, and seasoning, and have your thyme and bay leaf ready. Preheat your oven broiler only later when instructed.
2-Second Step: Melt butter and start the onions Melt 4 tablespoons unsalted butter in a large pot over medium-high heat. Add the sliced onions and sauté, stirring frequently, until they soften, about 10 minutes. The initial higher heat helps the onions release moisture and begin to soften.
3-Third Step: Caramelize slowly Lower the heat to medium. Add 1 teaspoon salt and 1 teaspoon granulated sugar, then continue to cook, stirring occasionally, for 35 minutes until the onions are deeply caramelized and syrupy. The slow cooking lets natural sugars brown. Stir every 5 to 10 minutes and scrape the bottom to prevent sticking; avoid constant stirring so the onions can brown properly.
4-Fourth Step: Add garlic and deglaze Stir in the minced garlic and cook 20 seconds until fragrant. Pour in 1/2 cup dry red wine to deglaze the pot, scraping browned bits from the bottom. Let the wine reduce slightly for 1 to 2 minutes so alcohol cooks off and the flavor concentrates.
5-Fifth Step: Build the broth Add 32 ounces low-sodium beef broth and 24 ounces low-sodium chicken broth to the pot. Stir in 1 tablespoon Worcestershire sauce, 2 sprigs fresh thyme, and 1 bay leaf. Bring to a gentle simmer over medium to medium-low heat. Simmer for 20 minutes, stirring occasionally, to marry flavors.
6-Sixth Step: Finish and season Remove the thyme sprigs and bay leaf. Stir in 1/2 tablespoon balsamic vinegar and taste; adjust with an additional pinch of salt and freshly ground black pepper as needed. Keep the soup warm on low heat, covered, while you toast the bread and prepare bowls.
7-Seventh Step: Toast the bread Preheat the oven broiler with a rack set about 6 inches from the heat. Place 5 slices of French bread on a baking sheet and brush both sides with 2 tablespoons olive oil. Broil 2 to 3 minutes per side, flipping once, until golden and toasted. Watch closely to avoid burning.
8-Eighth Step: Assemble and broil Ladle hot soup into oven-safe bowls placed on a rimmed baking sheet, filling each bowl about two-thirds full. Top each bowl with a toasted bread slice, then sprinkle with 1 1/2 cups shredded Gruyere, 1/4 cup shredded Mozzarella, and 2 tablespoons finely grated Parmesan divided among bowls. Broil until the cheese bubbles and browns with crusty edges usually 1 to 3 minutes depending on your broiler. Serve right away.
9-Final Step: Serving tips and safety Use oven mitts and a rimmed baking sheet when moving bowls under the broiler. If you don’t have oven-safe bowls, place cheese-topped toasts on a baking sheet and melt the cheese separately, then float cheese toasts on each bowl at serving. Enjoy immediately while the cheese is molten.
Notes
🧅 Caramelize onions slowly over about 40 minutes for rich taste, stirring occasionally to let sugars brown
🧀 Freshly shred Gruyere, mixed with Mozzarella and Parmesan for the best melting texture
🍷 Use high-quality beef stock; blending beef and chicken broth enhances the depth of flavor
- Prep Time: 15 minutes
- Cook Time: 1 hour 10 minutes
- Category: Soup
- Method: Stovetop Cooking
- Cuisine: French
Nutrition
- Serving Size: 1 serving
- Calories: 378 kcal
- Sugar: 9 g
- Sodium: 1014 mg
- Fat: 24 g
- Saturated Fat: 13 g
- Unsaturated Fat: 9 g
- Trans Fat: 0 g
- Carbohydrates: 21 g
- Fiber: 3 g
- Protein: 18 g
- Cholesterol: 60 mg
