Heat olive oil in a large Dutch oven over medium-high heat. Season the beef with salt and pepper and add to the pot. Brown the beef on all sides, about 8 minutes total.
Remove the beef from the pot and set aside. Add the onions, garlic, thyme, rosemary, and bay leaf to the pot and cook until the onions are soft, about 5 minutes.
Return the beef to the pot and pour in the beer and beef broth. Bring the mixture to a simmer and cover the pot. Place the pot in the preheated oven and cook until the beef is tender, about 2 hours.
Remove the pot from the oven and transfer the beef to a cutting board. Shred the beef with two forks and set aside.
Strain the liquid through a fine-mesh sieve and return to the pot. Bring the liquid to a simmer over medium-high heat. In a small bowl, whisk together the cornstarch and cold water. Slowly add the cornstarch mixture to the pot, whisking constantly, until the liquid has thickened, about 5 minutes.
Add the shredded beef back to the pot and stir to combine. Serve hot.