Place the asparagus on a rimmed baking sheet and drizzle 2 tablespoons of the olive oil over it. Toss gently to coat evenly. Sprinkle on the salt and toss again. Roast for 7-10 minutes for thin stalks and 9-14 minutes for thick ones. Remember that they will continue to cook a bit after you remove them from the oven, so take them out while they’re still a little firmer than you would like. The wide time ranges are because some people like their asparagus pretty crisp, some pretty soft.
Meanwhile, heat the remaining tablespoon of oil in a medium skillet over medium-high heat. Add the shallots and sauté for about 10 minutes until they are browned and just a bit crisp (not burned!...crisp).
During the last minute of roasting the asparagus, pull out the baking sheet, scatter the Parmesan over the spears, and return to the oven so that the Parmesan melts slightly.
Transfer the asparagus to a serving platter and scatter the shallots over the top. Season with pepper, and if you like, squeeze the lemon over all or some of the asparagus. Serve hot or warm.
Notes
You choose between thick and thin asparagus. The thin ones just need the bottom 2 inches cut off, cook faster, and work nicely in sautéed or stir-fried dishes. The fatter ones will conversely take longer to cook, but the thickness provides a much more satisfying bite.
Leftovers can be stored in an airtight container in the fridge for about 4 days. For best results, reheat in the oven at 400 degrees for about 5 minutes to crisp up the topping. The microwave will make the shallot and Parmesan topping soggy.