Heat butter in a large pot over medium heat. Saute onion until softened, about 4 minutes. Stir in milk, bring to a boil, and simmer for 4 minutes.
Cook the broccoli florets in rapidly boiling salted water until tender, about 5 minutes. Drain in a colander and rinse under cold water to set the bright green color. Drain.
Puree the milk mixture with broccoli in a blender. Return the soup to the saucepan and heat thoroughly. Season with salt and pepper. Serve lukewarm to warm. Garnish each serving with a dollop of yogurt.