Toast the spices. In a small skillet over medium heat, add the cinnamon stick and star anise pieces and toast until fragrant for about 1-2 minutes.
Saute the aromatics. In a large pot, add 2 tablespoons of vegetable oil and heat over medium-high heat. Then add the minced garlic and 1/2 of the minced shallot until fragrant and lightly browned. Then add the marinated beef, toss to combine, and cook on high heat for 6 minutes.
Add coconut water and spices. Then add in the coconut water, cinnamon stick, star anise, cut and pounded lemongrass, ginger, and bay leaves. Cover and cook on high heat for 30 minutes stirring periodically. Make sure the coconut water covers the meat completely during the 30 minutes. If it evaporates too much add more coconut water or water.
Add water and simmer. After 30 minutes, add 4 1/2 cups of water and bring to a boil. Once it reaches a boil, lower the heat to medium heat and cook for 1 hour- 1 hour 30 minutes or until the beef is tender.
Cook the carrots. While the stew is simmering, add 1 tablespoon of oil in a large skillet over medium-high heat. Add the remaining 1/2 of minced shallot, and saute until fragrant and translucent. Then add the carrots, 1 teaspoon chicken bouillon powder, and 1/2 teaspoon black pepper. Toss to combine and cook for 3 minutes or until lightly charred.
Remove the spices and add seasoning. Once the beef is tender, remove the bay leaves, ginger, star anise, and lemongrass. Add another 1 1/4 cup of water, 2 tablespoons chicken bouillon powder, sugar, salt, and carrots. Cover and simmer for 15 more minutes. Then season with more salt to taste.
Add cornstarch slurry and onion. In a small mixing bowl, combine cornstarch and water and mix until combined. Add the cornstarch slurry into the pot and onion. Mix to combine and cook until thickened. Taste to adjust with more salt, a dash of fish sauce, or sugar.
Serve. Ladle the bò kho into a bowl, garnish with Thai basil, and a squeeze of lime, and serve with sliced French baguette. Enjoy!