In a 5 qt Dutch oven, heat 2 - 3 oz of oil and butter over medium heat. Add onions; cook and stir until softened, approximately 10-13 minutes. Reduce heat to medium-low; cook, stirring occasionally, until deep golden brown, 30-40 minutes.
Stir in wine, add broth, pepper and salt; return to a boil. Reduce heat. Simmer, covered, stirring occasionally, for 1 hour.
Preheat oven to broil Lo. Place French bread slices or croutons on a baking sheet; toss with oil. Toast until brown.
Place ramekins or crocks on baking sheet. Ladle your soup into ramekins or individual serving crocks, top with slices or large croutons then add the shredded Swiss/Gruyere.
Sprinkle each crock with a generous amount of cheese and, broil until cheese is melted.