2 large onions -- I use one yellow and one red to add flavor dimension (and because my red onion obsession knows no bounds), but traditionally it's all yellow. Just don't use white because they're too astringent.
2 Tbsp butter
2 tsp flour
2 1/2 cups broth (traditionally beef, but you can use a dark vegetable broth if you're vegetarian)
1/2 baguette (use the stale leftovers for French toast.)
About 3 oz. grated gruyere cheese
salt and pepper
Step 1. Chop the onions and saute them in the butter in a pan large enough for the broth to be added later. Cook them until slightly tender and transparent.
Step 2. Add flour, stir, continue cooking a few more minutes.
Step 3. Add broth and bring to boil. Reduce to simmer, cover and let cook for about 10 minutes.
Step 4. Ladle equal amounts into ceramic ramekins or oven-safe bowls.
Step 5. Cut two slices of bread for each bowl. The slices will be semicircular, so two should fit well with the bottoms together.
Step 6. Set slices on top of soup and cover with grated cheese.
Step 7. Place dishes under the broiler until cheese is melted and starting to brown in places.
Step 8. Serve by placing the hot ramekins on small room-tempurature plates. Enjoy!