Heat butter into a 10-inch oven-proof frying pan over medium-high heat. Add shallots and cook, stirring occasionally, until they soften and turn translucent, about 3 minutes. Add asparagus, reduce heat to medium-low, and cook, covered, for 3 minutes.
Pour in eggs and cook until almost set, but still runny on top, about 2 minutes. While cooking, pre-heat oven broiler.
Sprinkle cheese over eggs and put in oven to broil until cheese is melted and browned, about 4-6 minutes. Remove from oven with oven mitts and slide frittata onto a serving plate. Cut into wedges.