In a pan (cast iron is useful in this recipe), on a medium heat fry onions and celery in butter and oil until softened (about 15 min). Add rice, coat well in oils and juices and let it toast in the pan for a few minutes before adding wine. Let the wine evaporate almost completely.
Lower the heat and start adding the stock ladle by ladle allowing rice to absorb it slowly. Stir your risotto often to prevent the rice from caching on the bottom of the pan.
When you have used ? of the stock add asparagus and pour most of the remaining stock in. Turn the heat down and let it cook until the asparagus and rice are almost cooked through.
Stir in lemon juice and zest and use the remaining stock to loosen up the risotto consistency if you feel like it needs it. You are looking for creamy, but not runny texture. Remember that even when you take the pan off the stove the rice will continue to absorb the moisture, so sprinkle your parmesan over and serve immediately.