Prepare the vegetables: Wash the beet leaves, stems, and roots thoroughly. Peel the small beet roots, carrot, parsley root, and potato. Dice the beet roots, carrot, parsley root, and potato into small cubes. Chop the beet leaves and stems into bite-sized pieces.
Sauté the onion and garlic: In a large pot, melt the butter over medium heat. Add the chopped onion and minced garlic, sautéing them until they become soft and fragrant, about 5 minutes.
Add the root vegetables: Add the diced beet roots, carrot, parsley root, and potato to the pot. Stir them with the onion and garlic, and cook for another 5 minutes to slightly soften the vegetables.
Add the broth: Pour in the vegetable or chicken broth, and bring the mixture to a boil. Reduce the heat to a simmer, cover the pot, and cook for about 15-20 minutes, or until the root vegetables are tender.
Add the beet leaves and stems: Once the root vegetables are cooked, add the chopped beet leaves and stems to the pot. Simmer for another 5-10 minutes, or until the leaves are tender but still bright in color.
Season and balance: Stir in the lemon juice or vinegar, and season the soup with salt and pepper to taste. The acidity will help balance the sweetness of the beets and enhance the overall flavor.
Finish with sour cream: Turn off the heat and let the soup cool slightly. Stir in the sour cream until fully incorporated, creating a creamy and smooth texture.
Serve: Ladle the Botwinka into bowls, garnish with fresh dill, and serve hot or warm.