Frijoles charros (or Cowboy Beans) is a traditional Mexican dish that is more of a bean soup than a plain old side of beans. It is, hands-down, my favorite way of eating beans as a main course.
For bonus points, serve them up simply with some hot flour tortillas, or even better, a pan of masa cornbread or pan de campo.

Growing up, beans and cornbread was a staple meal in our house. It’s about the cheapest way to feed a family of four. For us, cheap eating was especially important, considering my mother had to feed two boys who would each eventually grow up to be over 6′ 3″ and 230 pounds.
- Try one of our 12 salsa recipes to help you master Taco Night.
This is my take on all those beans and cornbread meals from when I was young. It’s one of the most comforting meals for me to eat.
Tips for the Best Frijoles Charros
There’s been an ongoing myth for decades that salting your beans too early will make them tough. It’s just not true.
Cook’s Illustrated debunked that myth for us a while back. Now we don’t have to worry about bland beans anymore.
I salt at the beginning of the cooking time (CI recommends actually salting during the soak phase, but I don’t think that’s necessary).
What will make your beans tough, though, is acidic foods. That’s why we add the tomatoes toward the end of the cooking time, after the beans have already softened up.
Before you add the tomatoes, be careful to taste your beans to ensure they’ve softened up before adding them. If you have an older batch of dried beans, it may take longer for them to cook, and you might be adding the tomatoes too early.

Frijoles Charros (Cowboy Beans)
Equipment
Ingredients
- 1 lb. dried pinto beans
- 8 ounces bacon - cut into 1/4-inch pieces
- 1/2 medium yellow onion - diced
- 3 serrano chiles - seeds and veins removed, finely chopped
- 4 cloves garlic - minced
- 1 tsp. Mexican oregano
- 1/2 tsp. cumin
- 8 cups chicken stock
- 1 1/2 lbs. ripe tomatoes - cored, seeded, and finely chopped
- 1/4 cup cilantro - chopped
- 1/2 tsp. salt - or to taste
Instructions
- Place the beans in a large bowl with enough water to cover them by 2-inches. Let soak overnight.
- Fry the bacon until all of the fat has rendered and it has become crispy. About 10 minutes over medium heat. Transfer to a paper-towel lined plate and place in the refrigerator. Pour off all but 2 tbsp. of the bacon grease (reserve for another dish). Add the onion and cook until translucent. About 8 minutes. Add serrano, garlic, oregano, and cumin. Cook an additional minute.
- Add in the chicken stock, scraping the bottom of the pot to remove any stuck-on bits. Add the beans. Bring to a gentle simmer and cook for about 1 1/2 hours, or until tender.
- Add cilantro, tomatoes, and bacon. Taste for salt and add more, if necessary. Cook an additional 15 minutes.
I made a double batch for my Bible study group last night & it went over well. Only 8 showed up so left overs go to my sister’s family (3) and niece’s family (9). I added leftover chicken chunks. It was delicious!
Awesome. I like to eat them as a whole meal on occasion. The chicken chunks would make them even more filling.