Heat olive oil and two tablespoons butter over medium heat in a wide bottomed skillet or pan with at least 3 inch sides. Add minced shallot to the pan and cook for 2-3 minutes until softened. Add rice and stir with a wooden spoon to coat in the butter so that all the grains are shiny. Toast rice for about 1 minute. Add wine and stir into the rice continuously.
Once the wine has been absorbed into the rice, add 1 cup of warm broth to the rice while constantly stirring the pot. This is the key to risotto, continuous stirring which releases starch from the rice and creates creaminess. Once that broth has been absorbed, add another cup. A trick to tell when it's time to add more broth is if the bottom of the pan is exposed when you drag your spoon across the bottom. You will continue to add broth, 1 cup at a time, while stirring until it has been absorbed into the rice and the rice is just slightly al dente. You don't want it to be mushy, it should still have a tiny bite to it. This whole process will take about 15-20 minutes, so don't rush. I start tasting little bits of the rice after about 10 minutes to gauge its doneness. Just have a glass of wine and enjoy the stirring.
When the rice is almost done, add the last bit of broth with the chopped asparagus. This will allow the asparagus to keep a little crunchiness by adding it at the end, rather than at the beginning. Once rice has reached desired doneness, turn off the heat.
Stir in the mascarpone and remaining butter. Add the parmesan, lemon zest and juice and stir until the cheese is melted. Season to taste with salt and pepper. Top with chopped chives, if desired. Serve immediately.