Preheat oven to 350 degrees.
Heat cast iron skillet with grapeseed oil (or other neutral oil) over medium heat until shimmering. Add onion to skillet and sauté for 5 minutes. Add in ham and continue to cook for another 3 minutes.
Add half of the chopped asparagus to the pan and continue to cook for another 3-5 minutes.
In a separate bowl, whisk together eggs, milk, and cheese. Pour mixture over the vegetables and ham in the skillet.
Arrange remaining asparagus in a pattern if desired on the top of the frittata.
Place skillet in the oven for approximately 25 minutes until cooked through.
Top frittata with sliced scallions and serve!