Caldo de Res: Authentic Mexican Beef Soup Recipe

Caldo de res is the cozy Mexican beef soup my abuela made on Sundays — fall-apart shank, sweet corn, and chunky veggies in a deeply savory broth.
Why You'll Love This Recipe
- A true one-pot classic: The beef, bones, vegetables, and aromatics all simmer together to create a complete meal in one generous pot.
- Deep, from-scratch flavor: Bone-in beef shank creates a rich, savory broth without needing boxed stock or bouillon-heavy shortcuts.
- Hearty but fresh: Big vegetables make it filling, while cilantro, lime, onion, and salsa keep every bowl bright.
- Great for family meals: Everyone can customize their serving with rice, tortillas, toppings, and heat level.
- Better than most restaurant bowls: Staging the vegetables keeps them tender and colorful instead of overcooked and mushy.
Caldo de res is the kind of soup that turns a quiet weekend afternoon into something that smells like home: beefy broth simmering away, corn sweetening in the pot, and cilantro waiting on the cutting board for that final fresh finish.
This is classic Mexican comfort food, built around bone-in beef, chunky vegetables, and a slow, patient simmer. The beauty is in the balance: the beef shank gives the broth body and richness, while carrots, potatoes, chayote, cabbage, tomato, and corn make each bowl colorful and deeply satisfying. It is rustic, generous, and meant to be served with lime wedges, warm corn tortillas, and a table full of toppings.

A good caldo de res recipe does not need complicated ingredients or a restaurant kitchen. What it does need is time, a big pot, and a little attention to when each vegetable goes in so the beef becomes tender before the potatoes and cabbage have a chance to fall apart. If you love Mexican beef soup with a clean but hearty broth, this from-scratch version is the one to make when you want the house to smell incredible.
What Makes This Mexican Beef and Vegetable Soup Special
The soul of this soup is the broth. Instead of starting with boxed stock, the flavor comes from simmering bone-in beef shank with onion, garlic, salt, and enough water to draw out every bit of marrow-rich goodness. As the beef cooks, the connective tissue softens and gives the liquid that lovely, slightly silky texture you expect from homemade beef broth.
Unlike quick soups where everything goes into the pot at once, this one works best in stages. The meat gets its head start, then the sturdy vegetables follow, and the more delicate cabbage and cilantro come in near the end. That timing is what keeps the corn juicy, the carrots tender, the chayote soft but not mushy, and the potatoes intact enough to spoon into big bowls.
There is also something wonderful about the way this soup eats like a full meal. One bowl gives you tender beef, vegetables, broth, and all the bright extras you add at the table. Spoon in a little Mexican rice if you like, add chopped onion and cilantro, then finish with lime until the flavors wake up.

Caldo de Res Ingredients
The essential caldo de res ingredients are humble, but each one has a job. Bone-in beef shank is the traditional anchor because it brings meat, bone, marrow, and collagen all in one cut. If you have ever made a beef shank recipe and loved the deep flavor of the braising liquid, you will understand why this cut is so beloved here.
For the vegetables, think big, rustic pieces rather than tiny dice. Corn cobs cut into thirds bring sweetness and a little drama to the bowl, while carrots and potatoes make the soup hearty enough for dinner. Chayote is traditional in many Mexican kitchens; it has a mild, almost squash-like flavor and holds its shape beautifully in broth. Cabbage wedges go in toward the end, softening just enough to become sweet without disappearing.
The aromatics stay simple: white onion, garlic, tomato, cilantro, salt, and pepper. The tomato adds color and a soft acidity, while cilantro stems and leaves bring freshness. Some families add mint, squash, zucchini, green beans, or even a whole jalapeño to perfume the pot, but this version keeps the flavor classic and clean.
Choosing the Best Beef for Deep, Savory Broth
Beef shank is the first choice because it is flavorful, economical, and perfectly suited to long simmering. It starts out tough, but with time the meat relaxes into tender pieces that can be pulled apart with a spoon. The marrow bone enriches the liquid, giving you a broth that tastes slow-cooked because it truly is.
If you cannot find shank, look for another bone-in beef cut. Short ribs, oxtail, or a mix of chuck and soup bones can work well, though the final texture and richness will vary. Avoid very lean stew meat as the only cut; it can turn dry and will not give the pot the same depth.
For the cleanest flavor, start the beef in cold or room-temperature water and bring it up slowly. As the water heats, foam and impurities will rise to the surface, which you can skim away before the vegetables go in. It is a small step, but it makes the finished soup taste brighter and look more inviting.

How to Make Caldo de Res
Start by placing the beef shank in a large stockpot with onion, garlic, salt, pepper, and plenty of water. Bring the pot to a gentle boil, then immediately lower it to a steady simmer. The goal is not a violent rolling boil, which can make the broth cloudy and the meat tense, but a relaxed bubble that slowly coaxes flavor from the bones.
During the first part of cooking, skim off any gray foam that gathers on top. Once the broth looks clearer and the beef is beginning to soften, add the tomato and the vegetables that need more time, such as corn, carrots, potatoes, and chayote. Keep the pieces large so they can simmer alongside the meat without breaking down.

When the beef is fork-tender and the vegetables are nearly done, add cabbage wedges and a handful of cilantro. The cabbage only needs enough time to soften at the edges and turn sweet. Taste the broth carefully at this stage; soups with potatoes and corn often need more salt than you expect, especially when they are made from water rather than prepared stock.
Just before serving, brighten each bowl with lime. This is one of those tiny finishing moves that makes the whole pot taste complete. The lime cuts through the richness of the bone-in beef, lifts the vegetables, and makes the broth feel fresh instead of heavy.

Building Flavor the Traditional Way
The most satisfying pots of this soup taste layered, not salty. That means seasoning the beef early, letting the onion and garlic do their work, and tasting again after the vegetables have released their own sweetness. The corn, tomato, and cabbage all subtly change the broth as they cook, so the final adjustment matters.
Many Mexican grandmothers also serve the soup with a little topping bar rather than trying to put every flavor in the pot. Chopped onion, cilantro, lime wedges, sliced jalapeños, and salsa let everyone build the bowl they love. A spoonful of pico de gallo on the side is especially good if you like a cool, juicy contrast with the hot soup.
For a clearer broth, resist the urge to stir constantly. Gentle simmering and occasional skimming do more for the soup than fussing with it every few minutes. Once the vegetables are in, use a ladle or spoon carefully so the potatoes and chayote keep their shape.

Serving Suggestions for a Cozy Mexican Dinner
To serve caldo de res the way it deserves, bring the whole pot to the table or ladle generous portions into wide bowls. Make sure every serving gets a little of everything: a piece of tender beef, a section of corn, a wedge of cabbage, potato, carrot, chayote, and plenty of hot broth. If the marrow bones are large, some people love scooping the marrow onto a tortilla with a pinch of salt and lime.
Warm corn tortillas are non-negotiable in my kitchen because they turn the soup into a hands-on, comforting meal. Use them to wrap bites of beef, dip into the broth, or scoop up rice from the bottom of the bowl. A side of Mexican rice is also classic, and many families spoon the rice directly into the soup so it soaks up the savory liquid.
Keep the toppings simple and bright. Chopped white onion adds crunch, cilantro adds freshness, and lime brings acidity. If you want heat, serve your favorite salsa, hot sauce, or roasted chile on the side instead of making the whole pot spicy.

Make It a Full Weekend Meal
This soup is ideal for a slow Sunday, especially if you like meals that stretch beautifully. While the beef simmers, you can prep toppings, cook rice, warm tortillas, and set out little bowls of salsa. By the time the vegetables go in, dinner is nearly done and the kitchen smells rich and cozy.
Because it is hearty without being fussy, this is also a wonderful recipe for feeding family or friends. The pot looks abundant, the colors are beautiful, and the toppings make everyone feel included. You do not need a complicated menu around it; the soup itself carries the meal.
If you are serving guests, place lime wedges, chopped onion, cilantro, sliced radishes, and extra tortillas in the center of the table. Add a bowl of rice and one or two salsas for restaurant-style choice without extra work. It is casual, generous, and exactly the kind of food people remember.

From the First Simmer to the Last Bowl
The best part of this soup may be how the flavor deepens as it rests. Even after you turn off the heat, the beef and vegetables continue to mingle with the broth, making leftovers especially satisfying. If you plan ahead, you can cook the beef portion earlier in the day, then add the vegetables closer to dinner so everything tastes freshly made.
When portioning leftovers, try to keep a good balance of broth, beef, and vegetables in each container. The big pieces make reheating easy, and the soup is just as welcome for lunch as it is for dinner. A squeeze of fresh lime after reheating brings back that just-served brightness.
This is the kind of recipe that feels both everyday and special. It is made with familiar ingredients, but the slow-simmered broth, tender beef, sweet corn, and fresh toppings turn it into something deeply comforting. Once you make a pot from scratch, it is hard to go back to a thinner, shortcut version.

A Final Ladle
Caldo de res is not fancy, and that is exactly its charm. It is a big-hearted pot of meat, vegetables, and broth that asks for patience more than skill. With bone-in beef, staged vegetables, and plenty of lime and cilantro at the end, you get a soup that tastes like it has been passed around a family table for generations.
Make it when you want a meal that warms the kitchen, feeds a crowd, and leaves you with leftovers you will actually look forward to. Serve it with tortillas, rice, and a few bright toppings, then let everyone build the bowl that tastes like home to them.
Expert Tips
- Simmer gently, don’t boil hard: A low, steady simmer keeps the broth cleaner-tasting and helps the beef become tender without tightening.
- Skim early: Remove foam during the first 20 to 30 minutes of cooking for a clearer, more polished broth.
- Cut vegetables large: Rustic chunks are traditional and hold up better during the long cooking time.
- Salt in stages: Season the beef at the beginning, then taste again after the vegetables cook because potatoes and corn absorb seasoning.
- Finish fresh: Lime juice, cilantro, and chopped onion at the table make the soup taste lively and balanced.
Variations & Substitutions
- Instant Pot: Pressure cook the beef, onion, garlic, salt, and water for about 45 to 50 minutes, then release pressure and simmer the vegetables using the sauté function.
- Slow cooker: Cook the beef, onion, garlic, and water on low for 7 to 8 hours, adding vegetables during the last 1 1/2 to 2 hours if possible.
- Seasonal vegetables: Zucchini, green beans, celery, squash, or turnips can join the pot depending on the season.
- Spicier version: Add a whole jalapeño or serrano to the broth, or serve chile de árbol salsa on the side.
- Milder version: Keep chiles out of the pot and let heat-lovers add hot sauce individually.
Storage & Leftovers
Store cooled soup in airtight containers in the refrigerator for up to 4 days. For the best texture, reheat gently on the stovetop over medium-low heat until the broth is hot and the beef is warmed through; avoid boiling aggressively, which can break down the vegetables.
To freeze, the best method is to freeze the broth and beef for up to 3 months, then add freshly cooked vegetables when reheating. Potatoes and chayote can become mealy after freezing, so if you know you are cooking for the freezer, consider removing the vegetables first or enjoying them within a few days.


