Heat olive oil in a large pot or Dutch oven over medium-high heat. Add the beef cubes and cook until browned on all sides, about 5–7 minutes. Remove beef and set aside.
In the same pot, add onion, carrots, and celery. Sauté for 5–7 minutes until softened. Add garlic, thyme, rosemary, and bay leaf; cook for 1 minute until fragrant.
Return browned beef to the pot. Stir in tomato paste and Worcestershire sauce, cooking for 1 minute to deepen the flavor.
Add beef broth, diced tomatoes (with juice), barley, salt, and pepper. Bring to a boil, then reduce heat to low. Cover and simmer for 1 hour, stirring occasionally.
Remove bay leaf. Taste and adjust seasoning if needed. Serve hot, garnished with fresh parsley.
Notes
For best results, use chuck roast instead of stew meat for extra tenderness. This soup freezes well for up to 3 months.