In a large pot, pour in the stock and bring to a boil over high heat.
Add in the potatoes; cook for 15 minutes
Add the beets, carrots and cabbage as well as the diced tomatoes and continue to cook for about another 10 minutes.
In a medium pan, heat olive oil and cook onions and garlic until softened (for about 5 minutes); add tomato paste and water; cook for a few minutes until combined.
Add the tomato/onion mixture along with the vinegar, to the pot and combine. If desired, place an immersion blender into the pot and purée a bit of the soup (but leave some chunky); season with salt and pepper.
Pour into serving bowls, dollop with sour cream/yogurt and sprinkle with dill and drizzle with olive oil if using.