To make the dressing, combine yogurt, extra-virgin olive oil, red wine vinegar, caraway seeds, horseradish, salt, sugar and pepper in a small bowl, whisking until smooth. Add additional salt, sugar and black pepper to taste. Refrigerate until read to use.
Preheat oven to 450°F and place a rack in the middle.
Cut squares of aluminum foil for each beet. Form a small well with the foil the size of the beet. At the bottom of the well, place a little water (this prevents scorching). Set the beet on top of the water. Drizzle with a little olive oil and sprinkle with salt and ground black pepper. Fold up the sides of the foil around the beet and seal shut. Repeat with remaining beets.
Place foil packets on a baking sheet and roast until an inserted knife meets little resistance (45 to 50 minutes). Once cool enough to handle, rub the skins of the beets off with a paper towel. Halve each beet then cut into 1/4-inch thick slices.
While the beets are cooking, prep the vegetables for the salad. Trim ends of the endive then cut the endive cross-wise into 1/2-inch thick rings. Trim fennel of stalks and fronds then cut out the core. Cut fennel crosswise into 1/4-inch thick slices.
Combine beets, endive and fennel in a large bowl. Add olive oil, red wine vinegar, salt and pepper, tossing until evenly coated. Season with additional salt if needed.
To serve, place salad on a large platter, drizzle with caraway dressing, scatter walnuts over top and finish with a few turns of freshly ground black pepper.