Bring a 4- to 6-quart pot of salted water to a boil over high heat. Add asparagus and cook until barely tender when pierced, 3 to 4 minutes. With a slotted spoon, transfer asparagus to a bowl of ice water to cool. Pour off ice water and set asparagus aside. Add potatoes to boiling water and cook until tender when pierced, 8 to 10 minutes. Drain in a colander; set aside.
In a medium frying pan over medium heat, cook bacon until it is just beginning to brown, 3 to 4 minutes. Add shallots and rosemary and cook until shallots are translucent, about 4 minutes.
In a blender, combine olive oil, vinegar, yogurt, mustard, and salt and pepper to taste. Whirl until blended and creamy.
In a large bowl, gently toss the asparagus, potatoes, shallot mixture, artichoke hearts, and capers with the dressing. Season with additional salt and pepper to taste. Garnish with rosemary sprigs (if using). Serve warm or at room temperature.
Note: Nutritional analysis is per serving.