Bring a large saucepan of salted water to a boil.
Add the asparagus and cook until just tender, about 3 minutes.
Drain and add to a bowl with cold water, and then drain again. Set aside.
In the same saucepan, bring the stock to a simmer over medium heat, then reduce the heat to low, but maintain a gentle simmer.
In another large saucepan, heat the oil over medium heat.
Add the onion and saute until softened, about 5 minutes.
Add the garlic and cook for another minute.
Add the rice and stir until well coated, about 2 minutes.
Add the wine and cook, stirring, until completely absorbed.
Add the hot stock to the rice a ladleful at a time, stirring frequently after each addition. Wait until the stock is almost completely absorbed before adding the next ladleful.
After about 25 minutes, the rice should be tender and creamy. If it is not quite done, continue to cook, adding the remaining stock until desired texture.
Remove from the heat and stir in the asparagus, butter, and Parmesan cheese.
Season with salt and pepper (start with 1/2 teaspoon salt, 1/8 teaspoon pepper), taste, and add more, in needed. Serve at once.