Season the beef generously with salt and freshly ground pepper.
In a large cast-iron casserole (I use my Staub oval cocotte), heat the olive oil over medium heat and add about half of the beef. Cook, over medium-high heat, stirring occasionally, until browned on all sides, 6 to 8 minutes. Transfer the browned beef to a plate and cook the remaining meat. Transfer it to the large plate.
Add the carrots to the casserole and cook over medium heat for about 5 minutes, stirring occasionally. Add the diced onions and cook for another 5 to 6 minutes, stirring occasionally, until softened and translucent. Transfer the vegetables to a plate.
Return the meat to the casserole, add the sherry and simmer until the alcohol has evaporated, 5 or 6 minutes. Add the stock and the bay leaves, place the lid on the casserole to cover tightly, reduce the heat to low, and cook for about 2 hours.
Add the vegetables to the casserole, adjust the seasoning, cover tightly and cook for about 30 more minutes, or until the beef is very tender. Uncover and cook for an extra 15 minutes so the sauce reduces and thickens a bit.
You can serve with steamed potatoes (or like I do, with baguette bread).
Notes
It’s worth noting that, because the beef will be slow cooked for a few hours, it will become very tender, so you can use a tougher cut of meat like bottom round, or eye of round.