For the ranch dressing: Place the mayonnaise, sour cream, buttermilk, vinegar, mustard, chives, parsley and garlic in a bowl; whisk until completely combined. Refrigerate, covered, until ready to serve.
For the salad: In a large bowl, toss the asparagus, lettuce, spinach, watercress, shallots and tomatoes together. Season with salt and pepper. Drizzle with ranch dressing and serve.