Prep the veggies: Dice the onion, mince the garlic, chop the cabbage, slice the carrots, and dice the potatoes. Keep everything ready by the stove.
Brown the beef: Heat 1 tablespoon olive oil in a large pot over medium-high heat.
Pat the beef dry, season with salt and pepper, and brown in batches until well-seared. Remove to a plate. If using ground beef, brown it and drain excess fat before proceeding.
Sauté aromatics: Add the remaining 1 tablespoon olive oil to the pot.
Add the onion and a pinch of salt. Cook 3–4 minutes until softened, then stir in the garlic for 30 seconds.
Build the base: Stir in tomato paste (if using) and cook 1 minute. Add smoked paprika and thyme; toast briefly to bloom the spices.
Deglaze and combine: Pour in a splash of broth and scrape up the browned bits.
Return the beef to the pot, then add the diced tomatoes, tomato sauce, remaining broth, bay leaf, carrots, and potatoes.
Simmer: Bring to a gentle boil, then reduce to a simmer. Cover partially and cook 25–30 minutes (ground beef) or 45–60 minutes (stew meat) until the beef is tender and potatoes are soft.
Add the cabbage: Stir in the chopped cabbage and Worcestershire. Simmer another 10–15 minutes until the cabbage is tender but not mushy.
Taste and adjust: Season with more salt and pepper.
If the broth tastes flat, add a splash of Worcestershire or a squeeze of lemon for brightness.
Serve: Ladle into bowls and garnish with fresh parsley. Pair with crusty bread or a simple side salad.