Choose asparagus spears of similar size so that they will cook evenly.Plus: More Brunch Ideas
Steam the potatoes until barely tender, about 5 minutes; set aside. Steam the asparagus until bright green but still crisp, about 2 minutes.
In a 10- to 12-inch nonstick skillet, heat 1 1/2 tablespoons of the oil over high heat. Add the potatoes and sauté until browned and crisp, about 7 minutes. Add the asparagus and onion, season with the salt and pepper and cook until tender, about 3 minutes; transfer to a plate.
Wipe out the skillet, set it over moderate heat and add 1 tablespoon of the oil. Beat the eggs with the heavy cream until smooth. Stir in the vegetables and pour the mixture into the skillet. Reduce the heat to low and cook until the edges just begin to set. Lift the sides of the frittata with a rubber spatula, tilting the pan to allow the uncooked eggs to seep under. Continue cooking until the bottom is set and the top is barely runny, about 7 minutes.
Set a large flat plate over the skillet and invert the frittata onto the plate. Add the remaining 1/2 tablespoon oil to the skillet and slide the frittata back in. Cook until the bottom is golden, about 3 minutes. Slide the frittata onto a large plate and cut into wedges. Serve warm or at room temperature.
A well-dressed salad and crusty bread.