1 For the asparagus: Rinse the asparagus, peel and remove woody ends. Assemble 4 asparagus spears each to a bundle using butcher's twine. Bring the water, salt, butter and sugar to the boil in a large pot. Add the asparagus and cook for 18 minutes.
2 Remove the asparagus with a slotted spoon and drain.
3 For the avocado sauce: Halve the avocados and remove pits. In a bowl, mash the avocado with the lemon juice with a fork. Stir in the yogurt and soy sauce. Season with salt and pepper to taste.
4 For the tomato sauce: Blanch the tomatoes in a pot of boiling water for a few seconds. Peel, quarter, remove seeds and cut into small cubes. Peel and finely chop the shallots. Stir the tomatoes with the shallots in a bowl. Stir in the olive oil and season with salt and pepper to taste.
5 For the yogurt-cream sauce: Blend the yogurt with the cream in a bowl. Season with the garlic powder. Season with salt and pepper to taste.
6 To serve, divide the asparagus between plates. Pour the yogurt-cream sauce over the asparagus bundles. Dollop the avocado sauce and tomato sauce on the plate beside the asparagus.