Trim and peel beets. Place them in a saucepan and cover them with 6 cups water and two tablespoons apple cider vinegar. Cover, bring to a boil then reduce the heat to maintain a moderate simmer. Cook the beets for 25 minutes, until they are fork tender.
Using a slotted spoon, remove the beets from the water and place them on a cutting board to cool. Reserve the cooking water. When beets are cool enough to handle, cut them into cubes.
While the beets cook, heat two tablespoons of vegetable oil in a large soup pot over medium heat. Add onions and carrots and cook, stirring regularly, until they have softened.
Once the onions and carrots are tender, push them to the side of the pot and add the cubed meat to the space you cleared. Once the meat starts to brown a little, stir it into the vegetables. Add the potatoes, beets, salt, pepper, beef stock and beet cooking liquid. Stir to combine and bring to a simmer.
Cover the pot and let it cook for 45 to 55 minutes, until the meat is tender and the vegetables are fully cooked.
Add the shredded cabbage and cook for another 10 to 15 minutes, until the cabbage is soft. Just before serving, stir in the remaining two tablespoons of apple cider vinegar.
Garnish with sour cream and wisps of fresh dill.