2 tablespoons unsalted butter, plus more for greasing
1 jumbo or 2 medium onions, diced
2 teaspoons kosher salt
½ teaspoon freshly ground black pepper
16 large eggs
¼ cup heavy cream or half-and-half
1 tablespoon chopped fresh thyme
2 cups (8 ounces) grated sharp white Cheddar cheese
¾ pound asparagus (longer, thinner stalks are preferable), tough ends snapped off and discarded
1 cup (4 ounces) crumbled goat cheese
Heat the olive oil and butter in a large skillet over medium heat. Add the onions, 1 teaspoon of salt, and 1/4 teaspoon of pepper and cook, stirring, until the onions are lightly golden but not charred in any spots, 10 to 12 minutes. Remove the onions from the heat, cool them slightly, then sprinkle the onions evenly over the prepared baking sheet to cool to room temperature, about 10 minutes.
Arrange two racks in the center and top third of the oven and preheat to 300°F.
In a large bowl, whisk the eggs and cream with the thyme and the remaining 1 teaspoon salt and 1/4 teaspoon pepper. Scatter 1 3/4 cups of the cheddar evenly over the onions, then pour the egg mixture over the cheese, tilting the baking sheet back and forth a bit to evenly distribute the mixture. Arrange the asparagus evenly on top of the mixture however you want to (I like to do them alternating the direction of the tips). Dot with the goat cheese, sprinkle with the remaining 1/4 cup cheddar, and bake on the lower rack until the pashtida is set in most parts, but may have a small wet spot or two, 21 to 23 minutes. Turn on the broiler, move the sheet pan to the top third of the oven, and broil until the top is slightly browned, 1 to 2 minutes. Cut into equal-sized pieces and serve warm or at room temperature.