Peel the onions and cut them in half from root to tip. Place each half cut-side down on a cutting board and slice it into thin, even strips. Keeping the slices similar in thickness helps them cook evenly.
Heat the Butter and Oil
Place a large skillet over medium heat. Add the butter and olive oil, allowing the butter to melt completely. The combination of butter and oil adds flavor while helping prevent the butter from browning too quickly.
Cook the Onions
Add the sliced onions to the skillet and sprinkle with salt and black pepper. Stir to coat them evenly in the fat. Cook for 5 to 7 minutes, stirring frequently, until the onions soften and begin to release moisture.
Speed Up the Browning
Reduce the heat to medium-low and continue cooking for another 10 to 15 minutes, stirring regularly. If the onions begin sticking to the skillet or browning too quickly, add a tablespoon of water and scrape up the browned bits from the bottom. Repeat with small splashes of water as needed.
Add the Finishing Touches
When the onions are soft and golden brown, stir in the balsamic vinegar if desired. For a slightly sweeter result, add the optional sugar during the final few minutes of cooking. Continue stirring until the liquid evaporates and the onions are glossy and tender.
Serve or Store
Remove the skillet from the heat and let the onions cool slightly. Serve warm as a topping or condiment, or transfer them to an airtight container for later use.