In large bowl combine beaten eggs with the milk and Parmesan. Heat the butter and oil in a large saute pan, until the butter is frothy. Add the onion and cook until the onion is translucent and golden, being careful not to burn them. Using a large wooden spatula, stir in the eggs and turn the heat down to very low. Stir the eggs to form a large flat omelet shape, fully covering the bottom of the pan. When the eggs begin to cook and take shape, stir in the diced asparagus and the herbs. Place the whole saute pan into the oven and continue to cook for 2 more minutes until the frittata is cooked around the edges and the center has puffed up.
Remove immediately form the oven. Invert the frittata onto a large platter and serve immediately.