Heat oil in a large skillet over medium-high heat. Add onions and cook, stirring occasionally, until starting to soften, about 4 minutes. Add ⅛ teaspoon salt and reduce heat to medium-low. Continue to cook, stirring occasionally, until the onions are deeply golden brown, jammy and reduced to about ⅔ cup, 35 to 40 minutes, adding water, 1 tablespoon at a time, and scraping the bottom of the pan if the onions begin to stick or burn. Remove from heat and set aside to cool completely, about 20 minutes.
Meanwhile, whisk yogurt, sour cream and cream cheese together in a medium bowl until very smooth. Whisk in Worcestershire, garlic powder, granulated onion, vinegar and the remaining ¼ teaspoon salt.
Stir the cooled onions into the yogurt mixture until incorporated. Refrigerate until cold, about 1 hour. To serve, transfer the dip to a serving bowl and serve with desired dippers.