Heat oil over medium-high heat in a large, deep saute pan until shimmering.
Add beets, then onion; saute, stirring very little at first, then more frequently, until squash start to turn golden brown, 7 to 8 minutes.
Reduce heat to low and add butter, sugar and garlic; continue cooking until all vegetables are a rich spotty caramel color, about 10 minutes longer.
Add caraway seeds and cayenne pepper; continue to saute until fragrant, 30 seconds to 1 minute longer.
Add broth; bring to a simmer over medium-high heat. Reduce heat to low and simmer, partially covered, until beets are tender, about 10 minutes.
Using an immersion blender or traditional blender, puree (adding fresh dill) until very smooth, 30 seconds to 1 minute. (If using a traditional blender, vent it either by removing the lid's pop-out center or by lifting one edge of the lid. Drape the blender canister with a kitchen towel. To 'clean' the canister, pour in a little half-and-half, blend briefly, then add to the soup.)
Return to pan (or a soup pot); add enough half-and-half so the mixture is souplike, yet thick enough to float garnish. Taste, and add salt and pepper if needed. Heat through, ladle into bowls, garnish and serve.