Put the oil in a large pot over medium heat. When it’s hot, add the onion and garlic and season with salt and pepper. Cook, stirring frequently, until softened, 5 to 7 minutes. Add the beets, potatoes, and carrot and cook, stirring constantly, for 2 minutes, then add the stock.
Bring to a boil, then cover and reduce the heat so the mixture simmers gently. Cook until the vegetables are fully tender, 20 to 30 minutes. Add the lemon juice and purée with an immersion blender. Taste and adjust the seasoning, and serve hot or cold, garnished with the sour cream and dill, if desired. (Store leftover soup in an airtight container in the refrigerator for up to several days.)
