If your beef shanks aren’t trimmed and tied, you will need to do that. Use a sharp knife to remove any connective tissue and fat around the outside edge of each shank. Use twine to tie around each shank tightly. Pat the shanks dry and lightly dust with flour on all sides.
Heat the olive oil in a braiser or wide dutch oven over medium high heat. Add the beef shanks and sear until browned on one side. Flip the beef and brown the other side. Remove the beef to a plate and set aside. Add a bit more olive oil to the braiser if it looks dry and then add the onions. Turn down the heat and sauté the onions until softened, about 5 minutes.
When the onions are soft and beginning to brown, add the garlic and sauté for one minute. Deglaze the braiser with the ale. Bring the ale to a simmer. Use a wooden spoon to scrape the brown bits from the bottom of the pan. Add the brown sugar, thyme, bay leaves, salt and pepper to the braiser along with the beef broth. Return the shanks to the braiser along with any juices that have accumulated.
Bring the liquid to a simmer, then cover and turn down to low. Cook the shanks on a very low simmer for 2 ½ to 3 hours or until very tender. Add the carrots to the beef after 1 ½ hours. The beef shanks are done when they are falling apart. If they still feel tight when probed, then continue cooking until they are tender.