I love how this soup delivers hearty comfort in every spoonful. The beef becomes fork-tender, the vegetables stay beautifully textured, and the broth carries layers of savory depth.
It’s also incredibly nourishing. With protein from the beef and fiber from the vegetables, I feel like I’m serving something both satisfying and wholesome.
What makes it even more special to me is its adaptability. I can adjust seasoning gradually, customize the vegetables, and serve it with rice or tortillas for a complete and flexible meal.
Ingredients
(Here’s a tip: Check out the full list of ingredients and measurements in the recipe card below.)
5–6 beef short ribs Boneless beef roast, cut into chunks 3 ears of corn, cut into halves or smaller pieces ½ head cabbage, cut into wedges Beef bouillon, to taste 2–3 tablespoons garlic powder 2 teaspoons cumin 1–2 carrots, sliced 4–6 yellow potatoes, quartered 8 ounces tomato sauce 1 zucchini (optional) Limes, cut into wedges for serving Black pepper, to taste Water, enough to fill a large pot
Directions
I start by filling a large pot with enough water for a generous amount of broth. I season the water with garlic powder, cumin, black pepper, and a light sprinkle of beef bouillon.
Once the water comes to a boil, I add the short ribs and beef roast pieces. I let the meat simmer for about 45 minutes, or until it becomes tender. If I have extra time, I let it cook a bit longer for deeper flavor. I skim off any foam or excess fat that rises to the top to keep the broth clear.
Next, I stir in the tomato sauce and taste the broth. I adjust the seasoning with more bouillon or garlic powder if needed.
I then add the carrots and potatoes first, since they take longer to cook. If I’m including zucchini, I add it shortly after. I let everything simmer until the vegetables are nearly tender, about 10 minutes.
Finally, I add the corn and cabbage wedges. I simmer for another 5 minutes, just until they soften but still hold their shape.
Before serving, I let the soup rest off the heat for about 10 to 15 minutes so the flavors can settle and deepen.
Servings and timing
Servings: 6 generous portions
Preparation time: 20 minutes Cooking time: 1 hour Total time: Approximately 1 hour 20 minutes
Calories per serving: Approximately 285 kcal (based on 1½ cups with beef, vegetables, and broth)
Variations
When I want a slightly different flavor, I use beef shank, oxtail, or chuck roast instead of short ribs. Each cut adds its own richness to the broth.
If I prefer extra vegetables, I add chayote, green beans, or even a bit of celery. For a heartier version, I sometimes stir rice directly into the pot near the end of cooking.
When I want a deeper base, I sear the beef in a little oil before adding it to the water. That extra step builds more complexity into the broth.
storage/reheating
I store leftovers in an airtight container in the refrigerator for up to 4 days. The flavor actually deepens overnight, which I really enjoy.
When reheating, I warm it gently on the stovetop over medium-low heat. If the broth has reduced or thickened, I add a splash of water to refresh it. If excess fat has solidified on top after chilling, I remove it before reheating.
This soup also freezes well. I store it in freezer-safe containers for up to 3 months and thaw overnight in the refrigerator before reheating.
FAQs
Can I use different cuts of beef?
Yes, I can substitute beef shank, chuck roast, or oxtail. Each cut provides slightly different richness and texture, but all work beautifully.
How do I keep the vegetables from getting mushy?
I add them in stages. Potatoes and carrots go in first, while corn, cabbage, and zucchini are added near the end so they stay tender but structured.
Is rice required in Caldo de Res?
No, rice is optional. I sometimes serve it on the side so everyone can add it to their bowl as they prefer.
Can I make this in a slow cooker or pressure cooker?
Yes. In a slow cooker, I cook the beef on low for 7–8 hours or high for 4–5 hours, adding vegetables in the final hour or two. In a pressure cooker, I cook the beef for about 35–40 minutes, then add vegetables and simmer briefly.
How do I reduce excess grease in the broth?
I skim the surface during cooking. If needed, I refrigerate the soup and remove the solidified fat before reheating.
Conclusion
Old Fashioned Caldo de Res is one of those timeless recipes I return to whenever I crave comfort and tradition in a bowl. The tender beef, vibrant vegetables, and deeply savory broth come together in a way that feels both simple and meaningful.
When I serve this soup with lime wedges, warm tortillas, and a side of rice, it transforms into more than just dinner. It becomes a shared experience centered around warmth, nourishment, and connection.
Old Fashioned Caldo de Res is a traditional Mexican beef and vegetable soup simmered with tender short ribs, hearty potatoes, sweet corn, and cabbage in a rich, comforting broth. This authentic homemade recipe is nourishing, flavorful, and perfect for family gatherings.
Author:Emma
Prep Time:20 minutes
Cook Time:1 hour 15 minutes
Total Time:1 hour 35 minutes
Yield:6–8 servings
Category:Main Course, Soup
Method:Stovetop Simmer
Cuisine:Mexican
Diet:Gluten Free
Ingredients
5–6 beef short ribs
1½–2 pounds boneless beef roast, cut into large chunks
3 ears corn, cut into halves or thirds
½ head cabbage, cut into wedges
1–2 carrots, sliced
4–6 yellow potatoes, quartered
1 zucchini, sliced (optional)
8 ounces tomato sauce
2–3 tablespoons garlic powder
2 teaspoons ground cumin
Beef bouillon (to taste, added gradually)
Black pepper, to taste
Water (enough to fill large stockpot)
Limes, cut into wedges (for serving)
Instructions
1. Build the Broth
Fill a large stockpot with water (about 12–14 cups, depending on desired broth amount).
Bring to a boil.
Add garlic powder, cumin, black pepper, and a light sprinkle of beef bouillon.
Carefully add short ribs and beef chunks.
Reduce to a gentle boil and simmer for 45–60 minutes, until meat is tender.
Skim foam or excess fat from the surface as needed.
2. Add Tomato Sauce
Stir in tomato sauce.
Taste and adjust seasoning with more bouillon or garlic if needed.
3. Add Firm Vegetables
Add carrots and potatoes first.
Simmer for about 10–15 minutes, until nearly tender.
4. Add Delicate Vegetables
Add zucchini (if using), corn pieces, and cabbage wedges.
Simmer an additional 5–10 minutes, until vegetables are tender but not overcooked.
5. Rest & Serve
Turn off heat and let soup rest for 10–15 minutes to deepen flavor.
Ladle into large bowls, ensuring each serving has beef, vegetables, and broth.
Serve with lime wedges and optional rice, salsa, or warm corn tortillas.
Notes
Searing Tip: For deeper flavor, sear the beef in a little oil before adding water.
Vegetable Timing Matters: Add vegetables in stages to prevent mushiness.
Skim for Clarity: Removing foam during simmering keeps broth clean-tasting.
Make Ahead Friendly: Tastes even better the next day.
Leftovers: Store refrigerated up to 4 days. Reheat gently and add water if needed.