Season beef cubes with salt and pepper, then dredge in flour, shaking off excess.
Heat oil in a large Dutch oven over medium-high heat and brown beef in batches until deep golden on all sides, about 8 minutes total, then set aside.
Reduce heat to medium, add onions to the pot, and cook until softened and beginning to caramelize, about 8 minutes, then add garlic and tomato paste and stir for 1 minute.
Pour in Guinness and scrape up all the browned bits from the bottom, then add beef broth, brown sugar, Worcestershire sauce, thyme, and bay leaves.
Return beef and any accumulated juices to the pot, bring to a boil, then reduce heat to low, cover, and simmer for 1.5 hours.
Add carrots and potatoes, cover, and continue cooking for 45 minutes until vegetables are tender and beef is falling apart.
Remove thyme sprigs and bay leaves, taste and adjust seasoning, then let rest for 10 minutes before serving to allow the sauce to thicken slightly.