Bring a large pot of salted water to a rolling boil, then add the pasta and cook until al dente, about 8-10 minutes. Stir occasionally to prevent sticking and keep an eye on the timer.
While the pasta cooks, trim the woody ends off the asparagus. If using thick stalks, you can chop them into bite-sized pieces; set the tips aside for later use.
Finely mince the garlic cloves and zest the lemon using a microplane, then juice the lemon into a small bowl, removing any seeds.
Drain the pasta, reserving about 1/4 cup of the starchy pasta water, then set the pasta aside.
In a large skillet over medium heat, melt the butter with a splash of olive oil if using. Once melted and fragrant, add the minced garlic and cook for about 30 seconds, stirring constantly until fragrant but not browned.
Add the asparagus stalks to the skillet, sauté for 3-4 minutes until they turn vibrant green and slightly tender, with a crisp bite. Season lightly with salt and pepper.
Transfer the drained pasta into the skillet with the asparagus. Pour in the lemon juice and sprinkle the lemon zest over everything. Toss gently to combine, allowing the flavors to meld for about 1-2 minutes.
If the mixture seems dry, add a splash of the reserved pasta water to loosen the sauce and create a glossy coating on the noodles.
Stir in the remaining butter until melted and the sauce turns silky. Taste and adjust seasoning with salt, pepper, or more lemon juice if desired.
Transfer the pasta to serving plates, sprinkle with grated Parmesan cheese if using, and add a little extra lemon zest for brightness. Serve immediately while warm and fragrant.