Cut onions into halves, then quarter each half.
Melt butter and salt in a dutch oven.
Add onions and cook covered for 20 minutes, stirring occasionally and breaking them up with a wooden spoon.
Uncover and cook over medium heat, stirring occasionally, until onions caramelize and turn golden brown, about 45 minutes. Adjust heat as needed to prevent burning.
Add dry vermouth and low sodium beef stock , then puree the mixture with an immersion blender.
Bring to a boil and add all-purpose flour , salt , and black pepper . Boil uncovered for 10 minutes, until soup thickens. Adjust seasoning with more salt and pepper to taste.
Heat broiler and place individual ovenproof casseroles on a baking sheet.
Ladle soup into casseroles and top with cheese .
Broil for 1–2 minutes, watching closely, until cheese melts and browns. Serve immediately.