Start by warming the vegetable broth in a separate pot over low heat, keeping it simmering gently.
Trim the woody ends off the asparagus, then chop the tender parts into 2-3cm pieces. Set aside a few tips for garnish if you like.
Finely chop the onion or shallot. Grate the Parmesan cheese and zest the lemon, keeping everything within arm’s reach.
In your skillet or wide saucepan, heat the olive oil and add the chopped onion. Cook over medium heat until the onion turns translucent and fragrant, about 2-3 minutes.
Add the Arborio rice to the pan and stir well, coating each grain with oil and onion. Toast lightly for about 2 minutes until the rice edges look translucent and smell nutty.
Pour in a ladle of warm broth and stir continuously until the liquid is mostly absorbed. Repeat this process, adding broth gradually, for about 18-20 minutes until the rice is creamy and just tender.
About halfway through, stir in the chopped asparagus pieces, letting them cook in the rice and absorb flavors while remaining bright and crisp.
Continue adding broth and stirring until the rice is tender but still has a slight bite, and the risotto has a creamy, velvety texture.
Turn off the heat and stir in the grated Parmesan, lemon zest, and a squeeze of lemon juice. Season with salt and pepper to taste, adjusting as needed.
Let the risotto rest for 1-2 minutes, allowing the flavors to meld and the texture to settle. Serve immediately, garnished with reserved asparagus tips or extra cheese if desired.