Trust me when I say these Mexican Charro Beans are next level greatness, made with pinto beans simmering in a boldly flavored broth of bacon, ham, chorizo, chili peppers, tomatoes and spices. You can make them with dried or canned pinto beans, cooked on the stove-top, slow cooker or in the instant pot.

I’m proud to add this recipe to my growing list of amazing, authentic Mexican recipes like chile relleno, Huevos Rancheros, Sopaipillas, and Horchata! Charro beans make a great main dish or side dish!

Charro beans served in a bowl with tortillas on the side.

What I love about this recipe:

  1. Bold flavor: The vast flavor profile from the different meats, chiles and spices is incredible. One taste and you will feel like a professional chef.
  2. Adaptable: You can use dried or canned pinto beans and I’ve left notes for several ingredient swap ideas and variations.
  3. Make them on the Stove-top, Instant Pot, or Slow Cooker!

What are Charro Beans?

Charro beans (AKA frijoles charros or cowboy beans) are a popular Mexican dish consisting of pinto beans in a boldly flavored broth with other types of meat (chorizo, bacon, ham), chili peppers, tomatoes, and spices. Its consistency os similar to soup and it can be served as a main dish or side dish. It almost reminds me of “pork and beans”, but way better and more boldly flavorful.

Ingredients:

  • Produce: onion, garlic, jalapeño pepper, cilantro.
  • Tomatoes: Roma tomatoes or canned diced tomatoes. I often substitute a 15-ounce can diced tomatoes with green chilies or habaneros and leave out the jalapeño in the recipe.
  • Spices: salt, pepper, bay leaf, cumin, paprika, oregano.
  • Meat: bacon, chorizo, ham.
  • Dried pinto beans: to use canned beans, see recipe notes.
  • Chipotle pepper in adobo sauce (optional): Chipotle peppers canned in adobo sauce are located in the Mexican aisle at the grocery store and add a great smoky flavor to the beans. You only need ½ or 1 whole pepper (depending on your spice preference) for this recipe. You can add the leftover chilis and sauce to a freezer bag and freeze for later use.
  • Chicken bouillon
  • Water

How to Make Charro Beans:

1. Cook the Pinto beans: Pour dry beans into a colander and rinse them off, removing any unwanted pieces. Add to a large pot with 6 cups of water (or enough to cover them by about 2 inches), a small chunk of onion, bay leaf and ½ teaspoon of salt.

Bring to a boil, then reduce heat to a simmer and cook for 1 to 2 hours, until the beans are tender, but not bursting. (Mine usually take about 1 hour but it will depend on how dry/old your beans are). Check them a few times during cooking to make sure they are covered in water and add a little more water if needed.

To process photos for cooking dry pinto beans in a pot.2. Drain and reserve broth. Once the beans are tender, drain them, reserving the liquid and pouring it into a measuring cup. Add water (or reduce leftover broth, as need) to the measuring cup to make 2 ½ cups of total liquid. Stir in 1 teaspoon chicken bouillon. Set aside.

3. In a large pot add the bacon and chorizo and cook for about 5 minutes or until bacon is cooked. Remove some of the grease. Add onion and garlic and cook until onion is translucent. Add ham (sausages, if using), diced tomatoes, peppers, cilantro, oregano, paprika, cumin, black pepper and cook for 5 additional minutes.

4. Add the cooked beans, and broth and simmer for 15 minutes. Taste and season with salt and pepper, or additional spices if needed.Serve garnished with cilantro.

Vegetables and spices sautéing in a pot and another photo of pinto beans and broth added to make charro beans.

You can serve charro beans as a main dish soup with warm tortillas on the side. When serving them as a side dish I like to stir in a cornstarch slurry (1 tablespoon cornstarch mixed with 2 tablespoons water) to thicken the sauce.

A cast iron pot filled with charro beans (frijoles charro).

Instant Pot Charro Beans:

Turn Instant Pot to sauté setting. Add bacon and chorizo and cook. Remove some of the grease. Add the onions and garlic, and cook until the onions are softened. Add ham, diced tomatoes, peppers, cilantro, oregano, paprika, cumin, and cook for 5 additional minutes. Add dry pinto beans and 5 cups of chicken broth. Secure the lid and cook on high pressure for 30 minutes. Allow the pressure to naturally release before removing the lid (about 20-30 minutes). Taste and season with salt and pepper.

Slow Cooker Charro Beans:

Sauté bacon, chorizo, onion and garlic in a pan and add to slow cooker with ham, diced tomatoes, peppers, cilantro, oregano, paprika, cumin, dry pinto beans, and 6 cups of chicken broth. Cook on low for 8-10 hours or on high for 4-5 hours until beans are tender. Taste and season with salt and pepper as needed.

Variations and adaptations:

  • For canned pinto beans: 5-6 cups of canned pinto beans may be substituted. Drain the liquid from the canned beans into a liquid measuring cup and add water, if needed, to reach 2 ½ cups of total liquid. Stir in chicken bouillon. Add the beans and liquid when directed in step 2, under “Make Charro Beans”.
  • Substitute black beans:  You can substitute dried black beans, cooking them the same way.
  • For Borracho beans: In step 3 after cooking the beans, only reserve ¼ cup of bean liquid and add 12 oz. of dark beer.
  • Substitute different meat:  Traditionally, charro beans are made with whatever meat you have on hand.  Add pork rind beef, or other pieces of chopped meat.
  • To thicken the beans: Charro beans are not traditionally “thick” but more like a soup. If you want the sauce slightly thickened you can stir in a cornstarch slurry (1 tablespoon of corn starch mixed with 2 tablespoons of water). I do this when serving them as a side dish.
  • Spice Level:  Control the spice with the chipotle peppers and jalapeños.  Add more, less, or remove the seeds and veins from the jalapeño to reduce heat.
  • Vegetarian/Vegan Charro Beans: omit the meat and add vegan chorizo, extra beans (like black beans), or additional vegetables like tomato, celery, and bell pepper.  Also substitute 1 tsp vegetable bouillon.

Make ahead and freezing Instructions:

To make ahead: The dry pinto beans can be cooked and stored, along with their reserved liquid, several days in advance, or the entire recipe can be made 2-3 days in advance and stored in the fridge. Rewarm over low heat on the stove. To make the dish even simpler, you can substitute canned pinto beans (see my notes in the recipe card).

To freeze: Allow to cool before storing in a freezer safe container for up to 3 months. Thaw overnight in the fridge and then re-warm in a pot on the stove.

Serve with:

You can also FOLLOW ME on FACEBOOKTWITTERINSTAGRAM and PINTEREST for more great recipes!

Recipe

Charro beans served in a bowl with tortillas on the side.
Prep 15 minutes
Cook 1 hour 30 minutes
Total 1 hour 45 minutes
Save Recipe

Ingredients
 
 

  • 1 pound dried pinto beans* (2 cups)
  • 6 cups water , or more if needed
  • ¼ of an onion
  • ½ teaspoon salt
  • 1 bay leaf

For the Charro Beans:

  • 5 slices bacon , chopped
  • 5 ounces chorizo (or 2 sausages or hot dogs), chopped
  • 1 cup diced ham or sausages
  • ½ of a yellow onion , chopped
  • 3 cloves garlic , minced
  • 2 tomatoes* , diced
  • 1 jalapeno or serrano pepper , seeded and chopped
  • ½ - 1 chipotle pepper in adobo sauce , chopped (optional, but recommended for a smoky spice)*
  • 1 cup fresh chopped cilantro (about ½ bunch)
  • 1/2 teaspoon cumin
  • ½ teaspoon paprika
  • 1/2 teaspoon oregano
  • Salt and pepper , to taste
  • 1 teaspoon chicken bouillon

Instructions
 

Cook the Pinto beans:*

  • Pour dry beans into a colander and rinse them off, removing any unwanted pieces. Add to a large pot with 6 cups of water (or enough to cover them by about 2 inches), a small chunk of onion, bay leaf and ½ teaspoon of salt.
  • Bring to a boil, then reduce heat to a simmer and cook for 1 to 2 hours, until the beans are tender, but not bursting. (Mine usually take about 1 hour but depends on how dry/old your beans are). Check them a few times during cooking to make sure they are covered in water and add a little more water if needed.
  • Once the beans are tender, drain them, reserving the liquid and pouring it into a measuring cup. Add additional water (or reduce liquid if needed) to make 2 ½ cups of total liquid. Stir in 1 teaspoon chicken bouillon. Set aside.

Make Charro beans:

  • Add the bacon and chorizo to a large pot and cook for about 5 minutes or until bacon is cooked. Remove some of the grease. Add onion and garlic and cook until onion is translucent. Add ham (sausages, if using), diced tomatoes, peppers, cilantro, oregano, paprika, cumin, black pepper and cook for 5 additional minutes.
  • Add cooked beans and broth and simmer for 15 minutes. Taste and season with salt and pepper, or additional spices if needed. Garnish with cilantro before serving.
  • Serve as a main dish, wish warm tortillas, or as a side dish. When serving as a side dish I like to thicken the beans by adding a cornstarch slurry at the end (1 tablespoon of corn starch mixed with 2 tablespoons of water).

Notes

Beans: To substitute canned beans, add 5-6 cups of canned pinto beans, reserving the liquid from the cans and pouring it into a measuring cup. Add chicken broth, if needed, to reach 2 ½ cups of total liquid. Stir in chicken bullion.  Add the beans and broth in step 2, under "Make Charro Beans".
Tomatoes: I often substitute a 15-ounce can diced tomatoes with green chilies or habaneros and leave out the jalapeño in the recipe.
Chipotle peppers canned in adobo sauce are located in the Mexican aisle at the grocery store. You only need ½ or 1 whole pepper (depending on your spice preference) for this recipe. You can add the leftover chilis and sauce to a freezer bag and freeze for later use.
Instant Pot Charro Beans: Turn Instant Pot to sauté setting. Add bacon and chorizo and cook. Remove some of the grease. Add the onions and garlic, and cook until the onions are softened. Add ham, diced tomatoes, peppers, cilantro, oregano, paprika, cumin, and cook for 5 additional minutes. Add dry pinto beans and 5 cups of chicken broth. Secure the lid and cook on high pressure for 30 minutes (may not 10 minutes longer if the beans are older/drier). Allow the pressure to naturally release before removing the lid (about 20-30 minutes). Taste and season with salt and pepper.
Slow Cooker Charro Beans: Sauté bacon, chorizo, onion and garlic in a pan and add to slow cooker with ham, diced tomatoes, peppers, cilantro, oregano, paprika, cumin, dry pinto beans, and 6 cups of chicken broth. Cook on low for 8-10 hours or on high for 4-5 hours until beans are tender. Taste and season with salt and pepper as needed.
Make Ahead Instructions: The dry pinto beans can be cooked and stored, along with their reserved liquid, several days in advance, or the entire recipe can be made 2-3 days in advance and stored in the fridge. Rewarm over low heat on the stove. To make the dish even simpler, you can substitute canned pinto beans (see note above).
Freezing Instructions: Allow the charro beans to cool and store in a freezer safe container for up to 3 months. Thaw overnight in the fridge and then re-warm in a pot.

Nutrition

Serving: 1cupCalories: 338kcalCarbohydrates: 40gProtein: 20gFat: 11gSaturated Fat: 4gCholesterol: 28mgSodium: 657mgPotassium: 920mgFiber: 10gSugar: 3gVitamin A: 535IUVitamin C: 12mgCalcium: 79mgIron: 4mg

Did You Make This Recipe?

Tag @TastesBetterFromScratch on Instagram with #TastesBetterFromScratch!

Serving size is about 1 cup.

HAVE YOU TRIED THIS RECIPE?!

RATE and COMMENT below! I would love to hear your experience.

This post contains affiliate links.

Related Posts

Share Recipe

Categories

About The Author

Lauren Allen

Welcome! I’m Lauren, a mom of four and lover of good food. Here you’ll find easy recipes and weeknight meal ideas made with real ingredients, with step-by-step photos and videos.

Leave A Comment

Your email address will not be published. Required fields are marked *

Recipe Rating





Comments

  1. nooooooooo…I was with you up to where you suggested thickening with corn starch. Yuck.
    If you want thicker beans, either simmer until more liquid cooks off, or add a slurry of MASA FLOUR, not cornstarch. The masa will thicken the beans without making them gummy/gooey/slimy like corn starch.

  2. 5 stars
    Mt family and I absolutely loved these beans!!! I used my Instapot and they came out so perfect, I can’t even begin to describe how amazed my family was when they tried them! Super easy to make!

  3. 5 stars
    I love this recipe but i dont add cornstarch for thickening. I just mash up a handful of beans and i get the thickness i want..

  4. 4 stars
    Very good recipe ! I made it exactly as written the first time and they came out pretty darn good ! The second time I went a little heavier on the jalepenos since I could not even taste the jalepenos the first time and I also used canned fire roasted tomatoes and smoked sausage … game changer !!

  5. Delicious! I only used the bacon, not the other meat, and I didn’t have any more chipotles in adobo, so I just used smoked paprika and 2 serranos. Will definitely make again!

  6. I made this recipe and it was wonderful… the only thing I changed was the spices.. 1 Tbsp of chili powder and cumin, way more chipotle sauce and one more pepper from the chipotle can. My husband loved it, we have the charro beans in wraps, omelets, burrito bowls ect.
    thank you so much for the recipe.
    Pam C

  7. 5 stars
    Astonished the family with this recipe. They’re thinking of all the ways to eat them. Mom wants to put them in a tortilla with cheese.
    Used chorizo, ham, weiners, and bacon. Yum.

  8. 5 stars
    Made this and tripled it. Really excellent flavor! I brought it to a potluck and it was a huge hit. Planning on using the leftovers as a base for white chicken chili tomorrow. My dried beans took a lot longer to cook though- over 3 hours. But very worth it! Thanks!!!!

  9. 5 stars
    These beans truly are amazing, the best I’ve ever had. Easy to make also. I didn’t need the bouillon because I used some chicken stock to meet the liquids level. I used dried pintos and fresh roma tomatoes and Mexican oregano.

  10. Wow! These were amazing! I made them without the Chorizo as I didn’t have any on hand. Still super delicious.

  11. 5 stars
    Tried it today. Just a great taste. Used Italian sausage instead of ham. Very good.
    Happy cook Bill

  12. 5 stars
    These were the best Charro Beans I’ve ever had. Two small changes.
    Did not add the Chipotle in Adobo because I used a can of Fire Roasted Tomatoes instead of fresh. Cilantro added at the end.
    On the recipe I didn’t see where to add bouillon so I stirred it into my bean juice.
    Man oh man, I cannot express how good these are and so worth the effort.
    Be sure to drain the grease and buy good dry pinto beans. They are not all equal.
    I buy Camelia brand beans and did not soak them at all.

  13. 5 stars
    I made this last night and was very impressed with how well it turned out. This charro beans recipe is every bit as good as the charro beans I get at my favorite local Mexican restaurant.

  14. 5 stars
    The quick cook dry bean method here beats the 8hr hour soak! Made these from dry bean to serve in less than 3 hours! Added 3 roasted Hatch chilies at the end. Kicked the spice up a bit but not hot. Perfect bean texture. Great tip on using fresh dry beans.

    1. I simmered my pinto beans for 6 hours after reaching a boil. Still not tender. Will soak next time.

      I used fried pulled pork and Chorizo in mine…delicious.

  15. 5 stars
    This turned out awesome!
    My husband doesn’t even like beans and couldn’t stop eating these! I used jalapeño bacon and 1/2 a jalapeño. Did everything else according to the directions. The spice was there but not overwhelming by any means.

  16. 5 stars
    SO delicious! I didn’t have any of the meat in the recipe on hand, and it was still incredible. Definitely going to try it with meat too. I made this to put in burritos, and didn’t realize until it was too late that I should’ve put in less liquid than was asked. But no matter, this recipe is seriously amazing.

  17. Making these beans now! However, I purchased a Mexican style chorizo, and I’m wondering should it have been Spanish instead? I have some andouille sausage in the fridge….if it should have been the Spanish chorizo should I substitute the andouille sausage? Thanks!

    1. I think Mexican style chorizo would be perfect for this recipe! In my opinion, Spanish chorizo would work better than the andouille but it would still probably be fine.

  18. Is there a brand of chorizo that you would recommend? I’ve tried a few in the past and was not a fan, but there were a couple that I liked but don’t know the brand. Thank you!

  19. 5 stars
    Made the canned version and OMG! Used Rotel for the onions tomatoes and peppers and added fresh onion as well! Key is add cilantro at end stir in as much as u like to taste!! Yum! I’ve been asked to make them again- went fast! Making again with dry beans to see!

  20. 5 stars
    Wow! I just made these beans for dinner as a side dish. I should have just skipped the main course and had these beans because they were the best we’ve ever had! They remind me of beans at Pappasitos in Texas…but better! I used canned beans and substituted hot Italian sausage for the chorizo (only because I had to use the sausage up). Your website has put me in a mood to cook more after looking at all your other recipes! I can’t wait to try! Thank you for sharing them and helping my family!

  21. 5 stars
    I made this only substituted diced jalapeño sausage, served it over cauliflower rice and made scratch cornbread. It was delicious and my husband loved it!

  22. 5 stars
    I made these beans for dinner tonight and they were a huge hit. So delicious! I cooked the beans in beef stock instead of just water and I put one can of Rotel original instead of driving tomatoes. Yum!!