Cost per Serving:
1. Melt 4 Tbsp. unsalted butter and 1 Tbsp. olive oil in a large pot. Add 3 lb. thinly sliced yellow onions and 4 thyme sprigs; cook, covered, on medium-low heat for 20 minutes, stirring often.
2. Uncover, add 1 tsp. sugar and 1/2 tsp. salt. Cook, stirring often, until onions are deep brown and caramelized, 30 to 40 minutes. Add 1 Tbsp. all-purpose flour; cook for 2 minutes more, stirring.
3. Add 1 cup white wine and 8 cups low-sodium beef broth; stir up browned bits on bottom of pot. Lower heat and simmer for 30 minutes; stir occasionally. Season with pepper.
4. Preheat oven to 425ºF. Cut 1 baguette into 8 thick slices. Spread both sides with 3 Tbsp. unsalted butter; place on a baking sheet. Toast until golden on both sides, 5 to 8 minutes, turning over once.
5. Fill 8 bowls with soup. Place a slice of toast on top of each bowl. Divide 1 lb. shredded Gruyère on top. Set bowls on baking sheets; bake until cheese is bubbly, 5 to 10 minutes.