Caldo de Res Mexican Beef Soup Recipe tastes rich and beefy with a bright lime finish, silky marrow, and tender vegetables. It suits busy families, weekend batch cooks, and anyone who wants a nourishing Mexican beef soup, and it takes about 2 hours 15 minutes total. I learned a version of this from my neighbor in El Paso and still cook it when I miss home.
Why Caldo de Res Mexican Beef Soup Recipe Is Worth It
Caldo de Res Mexican Beef Soup Recipe rewards patience with a broth that tastes deep and clean. Beef shanks simmer with bone marrow and aromatics, which gives the soup body without heaviness. Each bowl lands with fresh cilantro and lime, so the flavors stay bright.
You load the pot with corn, carrots, potatoes, zucchini, and cabbage. The vegetables cook in stages, so they keep shape and sweetness. The final spoonful tastes both cozy and lively.
I also love how flexible this soup stays. You can swap in short ribs or oxtail, or go big with chayote and extra corn. Leftovers taste even better the next day, which makes lunch simple.
Ingredients You Need
- 3 pounds bone-in beef shank, cut into cross-cut pieces with marrow (sub: 2 pounds beef shank plus 1 pound short ribs or oxtail)
- 12 cups water or low sodium beef broth (pantry shortcut: boxed broth; I like Kettle & Fire or Kitchen Basics)
- 1 large white onion, quartered
- 6 garlic cloves, smashed
- 2 bay leaves
- 2 teaspoons kosher salt to start, plus more to taste
- 1 teaspoon black pepper
- 2 teaspoons Mexican oregano, crumbled
- 2 Roma tomatoes, chopped, or 1 cup canned diced tomatoes (pantry shortcut: fire-roasted canned tomatoes, Muir Glen works well)
- 3 carrots, peeled and cut into 1 inch chunks
- 2 medium russet or Yukon gold potatoes, peeled and cut into 1.5 inch chunks
- 2 ears corn, cut into 2 inch rounds (pantry shortcut: 2 cups frozen corn kernels)
- 1 zucchini, cut into thick half moons
- 1 chayote, peeled and chunked, optional
- 1 small cabbage, cut into 6 wedges, core left in so wedges hold
- 1 bunch cilantro, leaves and tender stems
- 2 to 3 limes, cut into wedges
- Optional flavor boosts: 1 tablespoon tomato paste, 1 to 2 teaspoons beef bouillon granules or caldo de res seasoning, 1 jalapeño or serrano sliced
Equipment
- 7 to 8 quart Dutch oven or large stockpot with lid
- Chef’s knife and cutting board
- Tongs, ladle, and a fine mesh skimmer or spoon
- Small bowl for skimming foam and fat
Quick Tips & substitutions
- For a clearer broth, boil the beef shanks in water for 5 minutes, drain, rinse, and start with fresh water or broth.
- Keep the pot at a gentle simmer. A hard boil turns the broth cloudy and toughens the meat.
- Salt in layers. Start light, then adjust after the vegetables go in and again at the end.
- Cut vegetables chunky so they stay intact. Add tender ones later.
- Use beef broth for deeper flavor when short on time. A little bouillon boosts umami fast.
- No chayote near you? Add extra zucchini or more potatoes.
- Short on beef shank? Mix in short ribs or oxtail for similar richness.
- Instant Pot: pressure cook beef, aromatics, and broth for 35 minutes with natural release, then add veggies on Sauté until tender.
- Slow cooker: cook beef and aromatics on Low for 8 to 9 hours, then add veggies for the last 60 to 90 minutes.
- Finish with fresh cilantro and lime. Acid wakes up the beefy broth.
How to Make Caldo de Res Mexican Beef Soup
- Prep: 25 minutes
- Cook: 1 hour 50 minutes
- Total: 2 hours 15 minutes
- Trim any large exterior fat from the beef shanks. Pat dry and season with salt and pepper.
- Optional clarity step: place shanks in a pot, cover with water, bring to a boil for 5 minutes, drain, and rinse the meat and pot.
- Add the shanks back to the clean pot. Pour in 12 cups water or broth, add onion, garlic, bay leaves, oregano, and tomatoes.
- Bring to a simmer over medium heat. Skim gray foam as it rises so the broth stays clean.
- Partially cover and simmer gently for 60 to 75 minutes, until the meat feels tender when you tug it with tongs. Keep the simmer soft and steady.
- Taste the broth and adjust salt. Stir in tomato paste or bouillon if using, then simmer 5 minutes to dissolve.
- Add carrots, potatoes, and corn rounds. Simmer 20 minutes until they start to turn tender.
- Add zucchini and chayote. Simmer 8 to 10 minutes more.
- Nestle in cabbage wedges on top. Simmer 10 minutes, just until the cabbage turns tender but not limp.
- Pull out the onion, garlic, and bay leaves. Taste and adjust salt and pepper again.
- Chop a handful of cilantro and stir it into the pot. Squeeze in lime to taste.
- Ladle into bowls with a piece of beef shank and a corn round in each. Serve with extra cilantro and lime wedges.
Variations
- Spicy version: add sliced jalapeño or a spoon of chipotle in adobo during the final simmer.
- Tomato forward: double the tomatoes and add a pinch of smoked paprika for a deeper color.
- Low carb: skip potatoes and corn, add more cabbage and zucchini.
- Extra rich: mix in a few oxtail pieces with the shanks for a silkier broth.
Ways to Serve Caldo de Res Mexican Beef Soup
- Warm corn tortillas or bolillo rolls for dunking.
- A side of Mexican rice or cilantro lime rice.
- Avocado slices, radish, diced onion, and cilantro on top.
- Lime wedges, salsa macha, or pickled jalapeños for brightness and heat.
- Serve the marrow on toast with a sprinkle of salt and a squeeze of lime.
Storage
Cool the soup quickly, then stash it in airtight containers for up to 4 days in the fridge. The broth will form a natural fat cap that you can lift off cold and save for frying eggs or potatoes. Freeze the soup without the cilantro and lime for up to 3 months, then add fresh herbs and citrus after reheating. Reheat gently on the stove until hot and bubbling, and splash in water or broth if it thickened in the fridge.

Caldo de Res (Mexican Beef Soup)
Ingredients
Instructions
- In a large pot, bring water to a boil and add beef shank, onion, garlic, salt, and bay leaf.
- Reduce heat and simmer for about 1.5 to 2 hours, skimming off foam as needed.
- Add carrots, corn, and potatoes; continue cooking until vegetables and meat are tender.
- Add zucchini and chayote and cook for another 10 minutes.
- Remove bay leaf. Adjust salt to taste.
- Serve hot, garnished with cilantro.
