Classic Ukrainian Borscht with Tender Beef
A rich, vibrant Ukrainian borscht with tender beef, shredded beets, and perfectly cooked vegetables inspired by the shoulder season between fall and winter. Learn the authentic technique used in Ukrainian kitchens around the world.
There is a special moment every year—that quiet stretch between fall and winter—when pumpkins are still on the counter but the world is starting to sparkle with frost. It is not fully Christmas, yet the air has shifted. It is a shoulder season, and it calls for a dish that blends warmth, brightness, and nourishment.
This Ukrainian borscht with tender beef is exactly that. It is cosy without being heavy, colourful without being fussy, and deeply rooted in heritage while feeling perfectly modern for prairie kitchens like ours here in Manitoba.
Whether you're in Winnipeg, Warsaw, or New York, a bowl of this borscht carries the same quiet comfort—the same story.
Ingredients
- 1.5–2 lb (680–907 g) beef shank, chuck, or short ribs (bone-in preferred)
- 8 cups (1.9 L) cold water
- 1 bay leaf
- 1½ tsp (9 g) salt (to start — you'll adjust later)
- 6–8 whole peppercorns
- 1 onion, halved
- 3 medium beets, peeled + grated (large holes)
- 1 tsp (5 g) sugar (crucial for beet colour)
- 2 carrots, grated
- 1 onion, diced
- 1–2 tbsp (15–30 ml) tomato paste
- 2–3 tbsp (30–45 ml) neutral oil or butter
- 1 tbsp (15 ml) vinegar or lemon juice (added *AT THE END ONLY*)
- 3–4 cloves garlic, grated or minced
- 2 potatoes, diced
- 2 cups (150 g) finely shredded cabbage
- Fresh dill or parsley
- Salt and pepper, to taste
- Optional but excellent
- ½ red pepper, diced (adds sweetness)
- ½ tbsp (7 ml) butter at the end (rounds the acidity)
- Sour cream to serve
- 1 tsp (5 ml) Sambal Oelek or red pepper flakes, for gentle heat
Instructions
- 1
Add the beef, halved onion, bay leaves, peppercorns, and water to a pot. Bring to a boil and skim off the foam once (this is important). Lower the heat, cover loosely, and simmer for 1.5–2 hours until the beef is fork-tender. Remove the beef and shred it into large, rustic pieces. Strain the broth and discard the aromatics. Skim the fat (if the broth is cooled, the fat will become solid for easier removal). This gives you a clean, deep broth without muddy flavours.
- 2
Heat the oil or butter in a skillet. Add the onions and sauté until soft and lightly golden. Add the carrots and cook for 3–4 minutes until softened. Add the grated beets and 1 tsp (5ml) sugar, then sauté for 5 minutes until bright. You're not roasting the beets here — you're building colour inside the pot like Ukrainian restaurants do. Add 1 tbsp (15ml) tomato paste and cook it for 1 minute to caramelize. Add salt and pepper to taste. Add a ladle of broth to loosen and simmer for about 5 minutes. The broth and sugar "set" the beet pigment so it stays ruby red. Set this skillet aside for now.
- 3
Add your strained broth back to a large pot (different from the skillet in Step 2) and bring to a simmer. Add the diced potatoes and cook for 10 minutes. Add the beet, carrot, and onion mixture, then simmer for another 10 minutes. Add the shredded cabbage (and red pepper, if using) and cook for 5–7 minutes maximum. The cabbage should never turn grey or become limp. It finishes cooking in the bowl.
- 4
Once the heat is off, add 1–2 cloves of grated garlic. Add 1 tbsp (15ml) lemon juice or vinegar (this is very important). Return the shredded beef to the pot. Add ½ tbsp (7ml) butter (optional, but it gives a perfect mouthfeel). Taste for salt — you'll likely add ½–1 tsp (2.5–5ml) more.
- 5
Let the soup sit for 15–30 minutes before serving. This is when the flavour fully blooms. Ladle it into bowls. Add a spoonful of sour cream right in the middle and finish with fresh dill. Add an extra garlic clove pressed directly into your own bowl (Ukrainian-style, if you'd like).
FAQ
Did you try this recipe?
Leave a star rating — it helps other cooks find it!
Comments
Looking for more? Explore the full collection — filter by lifestyle, cuisine, or dietary needs.






