In a large pot or Dutch oven, heat the olive oil over medium-high heat. Season the short ribs with salt and pepper, then add them to the pot. Brown the short ribs on all sides, about 8-10 minutes. Remove the ribs and set aside.
In the same pot, add the sliced onions. Cook, stirring occasionally, until they are caramelized and golden brown, about 20-25 minutes. Add the minced garlic and thyme, cooking for an additional 1-2 minutes until fragrant.
Pour in the red wine, scraping the bottom of the pot to deglaze. Allow the wine to simmer for about 5 minutes until slightly reduced.
Return the short ribs to the pot, then add the beef broth, Worcestershire sauce, bay leaf, salt, and pepper. Bring the mixture to a boil, then reduce the heat to low. Cover and simmer for 2-3 hours, or until the meat is tender and falling off the bone.
Preheat the oven to 350°F. Place the French bread slices on a baking sheet and toast in the oven for about 10 minutes, or until golden brown.
Once the soup is ready, remove the short ribs and shred the meat, discarding the bones. Return the shredded meat to the pot and stir to combine. Remove the bay leaf.
To serve, ladle the soup into bowls, top each with a slice of toasted French bread, and sprinkle generously with Gruyère cheese. Place under the broiler for 2-3 minutes until the cheese is bubbly and golden.