Heat olive oil in a large pot over medium-high heat.
Season beef cubes with salt and pepper, then brown them in the pot.
Remove browned beef and set aside. In the same pot, add diced onion and sauté until translucent, about 5 minutes.
Add minced garlic and sliced carrots, cooking for an additional 2-3 minutes.
Stir in the chopped apples and cranberries, allowing them to cook for 3-4 minutes.
Return the browned beef to the pot and add the beef broth, thyme, and bay leaves.
Bring the mixture to a boil, then reduce the heat to low and cover the pot.
Cook for 1.5 to 2 hours, stirring occasionally.
Once the beef is tender, taste and adjust seasoning with additional salt and pepper if needed.
Remove bay leaves before serving.