Pat the chuck roast dry with paper towels. Season generously with salt, pepper, and garlic powder, pressing the seasonings into the meat.
Heat olive oil in a large Dutch oven over medium-high heat until shimmering. Add the roast and sear each side for 4-5 minutes until a deep golden-brown crust forms.
Remove the seared roast and set aside temporarily. To the same pot, add onions, celery, and garlic, stirring to scrape up those flavorful browned bits from the bottom. Cook for 2-3 minutes until the vegetables begin to soften.
Pour in the beef broth and red wine, then add tomato paste, stirring until completely incorporated. Add Worcestershire sauce, bay leaves, rosemary, and thyme.
Return the seared roast to the pot, nestling it among the vegetables and liquid. Add the carrots around the meat, ensuring they're partially submerged in the liquid.
For oven method: Cover the Dutch oven with a tight-fitting lid and place in a preheated 325°F (165°C) oven. Cook for 3-4 hours until the meat is fall-apart tender when tested with a fork.
For slow cooker method: Transfer everything to a slow cooker, cover, and cook on low for 8 hours or on high for 5-6 hours.
Once the meat is tender, carefully transfer the roast and vegetables to a serving platter and cover with foil to keep warm.
Strain the cooking liquid into a saucepan and bring to a simmer over medium heat. Create a slurry by mixing flour with 1/4 cup cold water, then whisk this into the simmering liquid. Cook for 5-7 minutes until the gravy reaches your desired thickness.
Slice the roast against the grain, arrange on a platter surrounded by the carrots and vegetables, and serve with the warm gravy.