Peel and thinly slice your onions. This is the most time-consuming part, but it’s worth it. A mandoline slicer can save time and ensure even slices, which help with even caramelization.
Caramelize the Onions
In a Dutch oven or large pot, heat the olive oil over medium-low heat. Add all the sliced onions and a generous pinch of salt. Stir well to coat the onions in oil.
Cook the onions slowly, stirring frequently, for about 30–35 minutes. They’ll first soften, then begin to brown, and eventually turn deep golden and jammy. This slow caramelization is what gives this vegan french onion soup its complex flavor. Don’t rush this part.
Deglaze with Wine and Add Aromatics
Once the onions are caramelized, add the balsamic vinegar and stir to scrape up any fond (those browned bits on the bottom of the pot). Pour in the white wine and let it simmer for about 5 minutes until slightly reduced.
Add the fresh thyme, bay leaf, vegetable broth, and water. Bring everything to a simmer, reduce the heat to low, and let it cook for another 15–20 minutes to let the flavors meld.
Season and Serve
Remove the bay leaf, taste, and adjust the seasoning with salt and pepper. Ladle the soup into bowls.
Optional Broiled Topping
For the full french onion soup recipe effect, toast slices of baguette, top them with shredded vegan cheese, and place under the broiler for 2–3 minutes until melted and bubbly. Place on top of each bowl before serving.