Heat olive oil in a large stock pot over medium heat. Sauté onions and garlic, and cook until softened, about 5 minutes. Add the beets and sauté for another 5 minutes.
Add broth, cover the pot and simmer until the beets are tender, about 40 minutes.
If using, stir in the beans and peas and cook another 5 minutes.
Season with lemon juice, caraway seeds, salt, pepper and dill.
If pureeing, let the soup cool a little bit before pureeing with regular or immersion blender.
Serve soup garnished with sour cream and fresh dill. Can be served hot or cold.