01 - Combine beef cubes with fish sauce, soy sauce, sugar, black pepper, garlic, and shallots in a large bowl. Marinate for at least 30 minutes, or up to 2 hours refrigerated for deeper flavor penetration.
02 - Heat vegetable oil in a large Dutch oven over medium-high heat. Sear marinated beef in batches, developing a rich brown crust on all sides. Remove browned beef and set aside.
03 - In the same pot, cook sliced onions until softened, approximately 3 minutes. Add tomato paste and stir continuously for 1 minute to deepen flavor and caramelize sugars.
04 - Add lemongrass, star anise, cinnamon stick, and bay leaves to the pot. Return seared beef and toss thoroughly to coat with aromatic base.
05 - Pour in beef stock or water, deglazing the pot by scraping up browned bits from the bottom. Bring to a boil, then reduce heat to low, cover, and simmer for 1.5 hours.
06 - Add carrot pieces and continue simmering uncovered for 30 to 40 minutes until beef is fork-tender and sauce has slightly thickened. Skim excess fat from surface as needed.
07 - Adjust seasoning with additional fish sauce or salt. Remove and discard lemongrass, star anise, cinnamon stick, and bay leaves. Ladle into bowls and garnish generously with cilantro, Thai basil, and sliced chili. Serve with lime wedges and crusty bread or rice noodles.