Caldo de Res (Beef Vegetable Soup)

Today I'm sharing a recipe my family has been making for years that's perfect for chasing the chill away. It's a Mexican soup called "caldo de res" and it's packed with veggies and tender, slow simmered beef.

Even when it isn't chilly out, I often go searching for a bowl of something comforting and nourishing. I'm one of those people who can eat soup for lunch or dinner pretty much any time of the year. One of my favorites is a soup I grew up on, it's a beef vegetable soup called caldo de res.

The recipe is pretty basic but, like most dishes, every family puts their own spin on it and this dish in particular is very customizable. In fact, I have three different versions I make; the one I'm sharing today is the most basic of them but nonetheless deserving of a place on your table.

It starts with the meat.

I like to use a meaty cut and it can be an inexpensive one. Today, I'm using chuck. Then there's the bones, a necessary component to any good stock and a crucial part of caldo de res. I've added a package of just plain beef soup bones I picked up at my local grocer to accompany my meaty chuck steak but you can also use beef shanks or short ribs.

There are classic vegetables that go into this soup: onions, celery, carrots, potatoes, corn on the cob, squash.

The variables include green beans, chayote (a pear-shaped squash popular in Mexico) and cabbage, to name a few.

Today's recipe includes all these except for the cabbage, mostly because I tend to use cabbage when I make the caldo with a guajillo chile base.

I filmed the last time I made this soup to make it easier for you to follow along with this super easy recipe. It's a little long, but I wanted to show you every step. Here's the video:

I plan on doing more of these kinds of videos to post to YouTube, including for recipes already up on this site. Let me know in the comments if there's a recipe in my catalog that you'd like me to walk you through.

Until next time, friends, be safe and ¡buen provecho! xo, ani

print recipe

Caldo de Res (Mexican Beef Vegetable Soup)

A comforting and nourishing bowl of vegetables and beef soup to chase the chill away. This is my version of this classic Mexican soup.


For the broth:
  • 2 pounds chuck steak
  • 2 pounds soup bones
  • coarse sea salt, to taste
  • freshly ground black pepper, to taste
  • ½ medium onion, cut in two
  • 1 carrot, peeled and halved
  • 2 celery ribs, halved
  • 1 jalapeño pepper, de-seeded if less heat is desired
  • 3 bay leaves
  • 3 cloves of garlic, peeled and smashed
  • ⅓ bunch cilantro
  • water to cover
  • coarse sea salt, to taste
For the soup:
  • 2 ears corn, cut into thirds
  • 4 small red potatoes, halved
  • 4 small Mexican squash, ends trimmed, halved lengthwise
  • 2 chayotes, peeled, halved length-wise, then halved again
  • 2 large carrots, peeled and quartered
  • 1 pound green beans, trimmed, longer beans halved
  • salt, to taste
For the marinated onion garnish:
  • ½ medium onion, thinly sliced
  • pinch of sea salt, or to taste
  • pinch of freshly ground black pepper, or to taste
  • juice of half a freshly squeezed lime
For garnish:
  • chopped cilantro
  • lime wedges
Optional garnish:
  • ½ cup cooked Mexican-style rice, per serving


Cut steak into 2-inch chunks, trimming away excess fat and any visible gristle. Generously season the steak and soup bones with salt and pepper. Add the steak, bones, onions, carrots, celery, jalapeño, bay leaves, garlic, cilantro, and salt to a large stock pot. Fill with water to cover meat and vegetables by 3 inches. Cover pot, put on stove at high heat and bring to a boil, then lower heat to maintain a slow simmer. After the first 20 minutes, skim off the foam and impurities that float to the top. Continue skimming every 20 minutes for the first hour of cooking.

Periodically check the stock pot, adding more water, if needed, to keep the water about 3 inches above the meat.

While the meat is cooking prep the soup vegetables as noted in the ingredients list.

For the marinated onions, place the thinly sliced onions in a small bowl. Season with salt and pepper. Stir in the juice of half a lime; set aside.

When the meat has been simmering for 2 hours, start checking for doneness. Once the meat easily pulls apart with a fork, remove the now exhausted stock vegetables and discard. Add the corn; cover and cook for 15 minutes. Add the potatoes, carrots, and tomatoes; cover and cook for 15 minutes. Remove the tomatoes and a ladle of the broth to a blender and set aside for now. Add the squash, chayote, and green beans. Taste soup and adjust seasoning. Cover and continue simmering. Blend the tomatoes and broth until smooth. Pour the tomatoes back into the pot, passing it first through a sieve; discard anything that remains in the sieve. Cover pot and simmer until chayote is fork tender. Serve immediately, garnishing with the marinated onion, chopped cilantro and a squeeze of lime. Optionally, add ½ cup cooked Mexican-style rice to each bowl.

Prep time: Cook time: Total time: Yield: 6 servings