Preheat the broiler. Melt the butter in a 9-inch cast-iron frying pan. Add the onions and saute until they are softened, about 5 minutes. Add the asparagus and cook until just softened, 2 minutes.
Whisk together the eggs, cream, 1/2 teaspoon salt and 1/4 teaspoon pepper in a medium bowl until smooth. Fold in the feta. Pour the egg mixture over the asparagus mixture and cook until almost set, 2 to 4 minutes. Transfer the skillet to the broiler and cook until golden brown on top, 8 to 10 minutes. Serve warm or at room temperature.