Turn the Instapot to the high sauté setting. Melt butter and add onion, cooking for about 30 minutes, stirring every 4-5 minutes, until onions begin to caramelize. Onions will look brown and feel soft.
Add garlic, salt, and pepper, cooking for 2 more minutes. Add the wine and simmer, stirring for 2 minutes.
Add the beef broth and balsamic. Cover the Instapot and cook for 10 minutes on high. It will take about 10 minutes for the Instapot to reach temperature, so plan on at least 20 minutes for this step.
Release the pressure on the Instapot. Taste the soup and season with additional salt and pepper if necessary.
If you have oven-proof bowls, turn the oven to broil. Add soup into the bowls, place a slice (or 2) of bread on top, and sprinkle with cheese. Broil for about 4 minutes until the cheese starts to brown. Serve and enjoy!
If you do not have oven-proof bowls, add 1 slice of bread to the bottom of each bowl. Top with soup and sprinkle cheese on top. The cheese will become nice and melty when placed on top of the hot soup. Serve and enjoy!