Peel the onions and cut in half. Cut each half into very thin slices. Heat olive oil in an oven safe skillet like a cast iron skillet over medium-low heat. Once the oil is warm, add the onion to the pan and toss to evenly coat in the oil.
Take your time caramelizing the onions. I like to keep the heat between medium and low to ensure they brown, but do not burn. If your stove runs hotter, you may want to keep the heat closer to low. Saute the onions, tossing occasionally until they are soft and golden brown - it should take between 30 and 40 minutes. While the onions are cooking, preheat the oven to 400F.
Add the salted butter to the pan and toss until its fully melted into the onions.Then, add the brown sugar and worcestershire sauce to the pan and toss until the sugar is dissolved.
Turn off the heat, but leave the skillet on the stove. Add the cream cheese, sour cream and mayo to the pan and toss to mix with the onions. Once an even mixture remains, top with the shredded gruyere cheese and place the skillet in the oven to bake at 400F for 10-12 minutes.
Serve warm with potato chips, tortilla chips, fresh vegetables or toasted bread.
Notes
Take your time caramelizing the onions so that they fold into the dip and almost melt into the cream cheese.
Gruyere is best because it is the classic French onion soup topping, but you can substitute Swiss cheese if needed.
Broil at the end to get the perfect golden brown topping. Watch closely if you broil the dip to avoid burning.