In a non-stick, 12-inch skillet, melt butter over medium-low heat. Add onions, salt, and cook, stirring occasionally, until onions are very tender and begin to caramelize about 45 minutes.
Reduce heat to low and cook, stirring frequently, until onions are deep golden brown, about 15 minutes longer.
Transfer onions to a 4.5-quart Dutch oven. Add ½ cup water to the same skillet and heat to boiling, stirring until browned bits are loosened from the bottom of the skillet. Add this liquid to the onions in the Dutch oven.
Add remaining 3 ½ cups water, broth, and thyme to onions and heat to boiling over high heat. Reduce heat and simmer for 30 minutes.
Preheat oven to 400℉. Arrange bread slices on a cookie sheet and bake until lightly toasted, about 5 minutes.
Place four oven-proof bowls on a rimmed baking sheet for easier handling. Spoon soup evenly into bowls and top with toasted bread, slightly pressing bread into the soup to moisten it.
Sprinkle shredded Swiss cheese evenly on top. Top with a slice of Swiss cheese
Bake until cheese has melted and begins to bubble, 10 to 12 minutes.