1. Break the eggs into 8 individual containers (such as teacups, prep bowls, or paper cups). Fill a large, low-sided pan with water, and add vinegar and 1/2 teaspoon salt; bring to a boil over medium-high heat.
2. Meanwhile, bring a separate pot of water to a boil in a medium saucepan over medium-high heat. Add asparagus spears, and cook 3–4 minutes or until crisp-tender. Remove asparagus with tongs, and set aside.
3. Dry the medium saucepan. Add olive oil, and heat over medium heat. Add garlic, and sauté about 1 minute. Turn off heat; add butter, and swirl pan. Add lemon juice, parsley, remaining salt, and pepper; swirl pan again to combine. Add asparagus and 2 tablespoons Parmesan; then toss with lemon-butter sauce to coat.
4. Slowly pour each egg into the boiling poaching water; cook 2 minutes. Turn off heat, and remove pan from burner. Divide asparagus among 4 plates. (Bring plates close to pan with poached eggs, and place a folded clean kitchen towel next to plates.)
5. Remove the eggs from water with a slotted spoon, 1 at a time, blotting bottom of spoon on towel to absorb excess moisture. Place 2 eggs on each mound of asparagus. Pour any remaining sauce over each serving, and sprinkle with remaining 2 tablespoons Parmesan. Serve immediately.