Peel the onions and cut them in half from top to bottom. Thinly slice each half into half-moons, creating delicate ribbons of onion.
In a large, heavy-bottomed skillet or pan, heat the butter and olive oil over medium heat until the butter is melted and the oil is shimmering.
Add the thinly sliced onions to the pan. Stir well to coat the onions evenly with the melted butter and olive oil. Spread them out into an even layer.
Reduce the heat to low or medium-low. Cooking the onions slowly over low heat allows them to caramelize without burning. This process takes time, but the results are worth it.
Stir the onions occasionally to ensure even caramelization. As they cook, they will start to soften and turn a golden color.
Sprinkle a teaspoon of sugar over the onions if you want to enhance the caramelization. This step is optional but can add a slightly sweeter and richer flavor to the onions.
Season the onions with salt and black pepper to taste. The salt helps draw out moisture from the onions, aiding in the caramelization process.
Continue cooking the onions over low heat, stirring occasionally, until they reach a deep golden brown color. This can take anywhere from 30 to 60 minutes, depending on your heat level.
For an extra layer of flavor, add balsamic vinegar to the caramelized onions during the last 10 minutes of cooking. Stir well to incorporate.
Taste the caramelized onions and adjust the seasoning if necessary. You can add a pinch more salt or a drizzle of balsamic vinegar for acidity.
Once the onions are beautifully caramelized and rich in color and flavor, remove them from the heat. Serve them hot as a topping for burgers, pizzas, sandwiches, or alongside grilled meats and vegetables.