Begin the recipe with slicing your onions. I like to peel the whole onion and then slice it down the middle through the root. I then slice even slices so that all onions are uniform. This will allow them to all cook at the same time.
Add your olive oil to a soup pot. Turn the heat on medium and allow the oil to heat. Add your onions and lower the heat to medium low. Cook the onions for at least 1 hour, stirring frequently. Do not walk away for long or the onions will burn. You will need to lower the heat periodically if the onions begin to brown too quickly.
After 1 hour, your onions should be browned, soft, and jammy. Add your herbs and garlic. Stir to combine and cook until your garlic is very fragrant, about 1 minute.
Pour in your beef stock. Turn the heat up to medium to medium high to bring the soup to a boil. Add the soy sauce and the balsamic.
Once the soup comes to a boil, lower the heat to medium low. Add the chopped leftover pot roast, salt and pepper. Put a lid on your soup and allow to cook for at least 1 hour at a low simmer, stirring occasionally.
Preheat your broiler when ready to serve. Take a slice of brioche and use a cookie cutter or a lid to punch out a circle of bread. Make sure the circle is slightly smaller than your serving bowl so it fits inside.
On a baking sheet, toast your Brioche circles under the broiler for 1-2 minutes per side. Remove from the oven.
Spoon your soup into your bowls about 3/4 of the way full. Top with a circle of Brioche. Top the Brioche with two slices of Swiss cheese. Carefully return the soups to the broiler for 2-3 minutes, or until the cheese is melted and beginning to brown. You can also do this with a kitchen torch
Remove from the oven carefully and allow to cool 1-2 minutes before digging in. Enjoy!