Heat the oil and shallot in a large skillet over medium heat. When things start to sizzle, add the garlic. Cook for 5 minutes or so, until the shallot gets dark golden brown and starts to caramelize.
Turn the heat up to medium high, and add the asparagus, let it cook a little, and toss it in everything to coat. Turn the heat back down to medium, add the lemon juice, cover the pan, and let it cook for 3-5 minutes, or until the asparagus bends a little when you pick it up, but not so much that it's mush. (You want it cooked through and not crunchy and raw, but still with some firmness and bite.)