1. Light a grill or heat a grill pan. In a heatproof medium bowl, whisk the egg yolks with the egg and vin santo. Set the bowl over a medium saucepan of simmering water and vigorously whisk the eggs over moderate heat until the sauce holds firm peaks, about 5 minutes. Remove the bowl of sauce from the heat.
2. In a small bowl, mix the butter with the heavy cream and pepper. Whisk the cream mixture into the sauce, 1 tablespoon at a time, until incorporated. Season the zabaglione with salt and keep warm.
3. In a large bowl, toss the asparagus with the olive oil and season with salt. Grill the asparagus over moderately high heat, turning occasionally, until charred all over and crisp-tender, about 5 minutes. Transfer the asparagus to plates.
4. Set the bowl of sauce over the saucepan of simmering water and whisk over low heat until thick and just heated through, about 1 minute. Spoon the sauce over the asparagus, sprinkle with the Parmigiano-Reggiano and serve.