Heat the olive oil in a large pot or Dutch oven over medium-high heat.
Season the beef chunks with salt and pepper. In batches, brown the beef on all sides, about 5 minutes per batch. Remove and set aside.
In the same pot, add the diced onion and sauté for 2-3 minutes until translucent. Add the minced garlic and cook for another minute.
Return the beef to the pot and add the beef broth, stirring to combine.
Add the carrots, potatoes, celery, tomato paste, dried thyme, dried rosemary, bay leaf, and additional salt and pepper to taste. Bring the mixture to a boil.
Once boiling, reduce heat to low, cover, and let simmer for about 2 hours, or until the beef is tender.
If you prefer a thicker stew, mix the flour with a small amount of water to create a slurry and stir it into the stew during the last 15 minutes of cooking.
Remove the bay leaf before serving. Taste and adjust seasoning if necessary. Ladle into bowls and enjoy!