I guarantee my Easy Charro Beans turn plain pinto beans into a ridiculously saucy, smoky pot you will insist on serving at every cookout.

I’m obsessed with Charro Beans because they are loud and honest, not fussy. I love when simmered pinto beans soak up smoky bacon and bright Roma tomatoes, popping on the tongue.
Easy Charro Beans hit that spot when I want something that tastes like it fought for flavor and won. Rich broth, little bits of pork, cilantro scattering on top, spoon after spoon until I stop pretending I’m sharing.
And the way the beans stay tender but not mushy? Yes.
This is the kind of side that disappears from the table first. Every spoonful demands another now and zero regrets.
Ingredients

- Pinto beans: Basically the creamy base, hearty and filling once they’ve soaked up flavors.
- Water or chicken broth: Plus it thins the pot and adds savory depth if you use broth.
- Bacon: Crispy salty crunch and smoky fat that makes everything taste guilty-good.
- Mexican chorizo: Spicy, greasy punch; it’s optional but I’d never skip it.
- Ham or smoked pork: Adds meaty chew and a mellow smokiness from leftovers.
- Yellow onion: Sweetness and texture, it softens and rounds out the heaviness.
- Garlic: Pungent warmth that cuts through richness, simple but essential.
- Roma or canned tomatoes: Bright acidity and juiciness to keep it lively.
- Jalapeños or serranos: Heat control, seeds on for a real kick.
- Cilantro: Fresh herbal lift, chop it last so it pops.
- Cumin: Earthy, slightly nutty warmth that feels familiar and cozy.
- Oregano: Herbal backbone, a little dried oregano goes a long way.
- Bay leaf: Background savory note, you won’t taste it directly but you’ll notice it.
- Kosher salt: Enhances everything, add slowly and taste as you go.
- Black pepper: Mild bite and aroma, classic seasoning move.
- Vegetable oil or lard: For sautéing, adds sheen and helps browning.
- Green onions: Plus fresh crunch and mild bite for garnish.
- Lime wedges: Basically optional brightness that wakes up the whole bowl.
Ingredient Quantities
- 1 pound dried pinto beans, rinsed and picked over
- 8 to 10 cups water or low sodium chicken broth, more as needed
- 4 to 6 strips bacon, chopped
- 8 ounces Mexican chorizo, casings removed (optional but recommended)
- 6 ounces cooked ham or smoked pork, diced (like country ham or leftover carnitas)
- 1 medium yellow onion, finely chopped
- 3 to 4 garlic cloves, minced
- 2 Roma tomatoes, seeded and diced or 1 14-ounce can diced tomatoes
- 1 to 2 jalapeños, seeded and thinly sliced, or serranos for more heat
- 1/4 cup fresh cilantro, chopped plus extra for garnish
- 1 teaspoon ground cumin
- 1 teaspoon dried Mexican oregano or regular oregano
- 1 bay leaf
- 1 to 1 1/2 teaspoons kosher salt, plus more to taste
- 1/2 teaspoon freshly ground black pepper
- 1 tablespoon vegetable oil or lard, if needed for sautéing
- 2 green onions, thinly sliced, optional for garnish
- Fresh lime wedges for serving, optional
How to Make this
1. Pick over and rinse the pinto beans, then either soak them overnight in plenty of water or do a quick soak: cover with water, bring to a boil 2 minutes, turn off heat and let sit 1 hour; drain and rinse.
2. In a heavy pot or Dutch oven, cook the chopped bacon over medium heat until most fat renders and edges brown, remove some fat if there’s way too much but leave about 1 to 2 tablespoons for flavor.
3. Add the chorizo (if using) and cook, breaking it up, until it’s browned, then stir in the diced ham or smoked pork just to warm and get some color.
4. If the pan looks dry, add the tablespoon of vegetable oil or lard, then add the chopped onion and sauté until translucent, about 4 to 6 minutes; stir in the minced garlic and cook 30 seconds more.
5. Add the drained beans to the pot, pour in 8 cups of water or low sodium chicken broth, drop in the bay leaf, cumin, oregano, salt and pepper, and bring to a gentle boil; scrape up any browned bits from the bottom for extra flavor.
6. Reduce heat to a simmer, partially cover, and cook gently until beans are tender, about 1 1/2 to 2 hours for unsoaked, less for soaked; check every 20 to 30 minutes and add more liquid as needed so beans stay mostly submerged.
7. When beans are nearly tender, stir in the diced tomatoes, sliced jalapeños, and 1/4 cup chopped cilantro; simmer another 15 to 20 minutes so flavors marry and tomatoes break down a bit.
8. Taste and adjust seasoning with more salt and pepper if needed; remove bay leaf, mash a few beans against the side of the pot if you want a thicker broth, or add more broth if you prefer soupy beans.
9. Finish with chopped green onions and extra cilantro, squeeze fresh lime wedges over bowls when serving, and serve hot with warm tortillas, rice, or as a hearty side.
10. Leftovers get better overnight; cool completely, refrigerate up to 4 days or freeze up to 3 months. When reheating, add a splash of broth or water to loosen them up and re-season if needed.
Equipment Needed
1. Large heavy pot or Dutch oven (6 to 7 quart)
2. Cutting board
3. Chef’s knife
4. Colander or fine mesh sieve (for rinsing and draining beans)
5. Measuring cups and spoons
6. Wooden spoon or heatproof spatula (for stirring and scraping)
7. Slotted spoon or ladle (for serving and skimming)
8. Mixing bowl (for soaking beans or holding chopped ingredients)
9. Can opener (if using canned tomatoes)
FAQ
Charro Beans Recipe (Frijoles Charros) Substitutions and Variations
- 1 pound dried pinto beans: you can swap with 1 pound black beans for a deeper flavor, or use 3 15-ounce cans pinto or black beans if you’re short on time (drain and rinse canned beans).
- 8 to 10 cups water or low sodium chicken broth: use vegetable broth for a vegetarian version, or replace half the liquid with a light lager beer for a subtle malty note.
- 4 to 6 strips bacon: try pancetta, salt pork, or smoked turkey bacon if you want less pork fat; for no-pork, use smoked paprika and a splash of liquid smoke to mimic that smoky taste.
- 8 ounces Mexican chorizo: substitute spicy ground pork or beef seasoned with a teaspoon smoked paprika plus a pinch of cayenne, or use chorizo blanco or sliced smoked sausage if you prefer a milder, cooked sausage.
Pro Tips
1) Cook the bacon and chorizo low and slow so the fat renders out and you don’t scorch the meat. If it starts browning too fast, lower the heat and be patient, you get way more flavor that way.
2) Save some of the bean cooking liquid. If you need to thin the beans later or when reheating, use the starchy liquid instead of water or broth to keep the texture and flavor right. Also, if you want an extra silky mouthfeel, mash a cup of beans into the pot and stir them back in.
3) Season in layers, not just at the end. Add a little salt when you start sautéing the onions so they sweat better, then taste and adjust after the beans are tender. Cumin and oregano mellow with long cooking so you can add a bit more near the end if it needs brightness.
4) Control the heat level more precisely by using seeds or different peppers. Remove seeds and membranes from jalapeños for mild heat, keep some seeds for medium, or swap in serranos if you want it to bite. If you overdo the heat, a squeeze of lime and a spoonful of sugar or honey will calm it down.

Charro Beans Recipe (Frijoles Charros)
I guarantee my Easy Charro Beans turn plain pinto beans into a ridiculously saucy, smoky pot you will insist on serving at every cookout.
8
servings
380
kcal
Equipment: 1. Large heavy pot or Dutch oven (6 to 7 quart)
2. Cutting board
3. Chef’s knife
4. Colander or fine mesh sieve (for rinsing and draining beans)
5. Measuring cups and spoons
6. Wooden spoon or heatproof spatula (for stirring and scraping)
7. Slotted spoon or ladle (for serving and skimming)
8. Mixing bowl (for soaking beans or holding chopped ingredients)
9. Can opener (if using canned tomatoes)
Ingredients
-
1 pound dried pinto beans, rinsed and picked over
-
8 to 10 cups water or low sodium chicken broth, more as needed
-
4 to 6 strips bacon, chopped
-
8 ounces Mexican chorizo, casings removed (optional but recommended)
-
6 ounces cooked ham or smoked pork, diced (like country ham or leftover carnitas)
-
1 medium yellow onion, finely chopped
-
3 to 4 garlic cloves, minced
-
2 Roma tomatoes, seeded and diced or 1 14-ounce can diced tomatoes
-
1 to 2 jalapeños, seeded and thinly sliced, or serranos for more heat
-
1/4 cup fresh cilantro, chopped plus extra for garnish
-
1 teaspoon ground cumin
-
1 teaspoon dried Mexican oregano or regular oregano
-
1 bay leaf
-
1 to 1 1/2 teaspoons kosher salt, plus more to taste
-
1/2 teaspoon freshly ground black pepper
-
1 tablespoon vegetable oil or lard, if needed for sautéing
-
2 green onions, thinly sliced, optional for garnish
-
Fresh lime wedges for serving, optional
Directions
- Pick over and rinse the pinto beans, then either soak them overnight in plenty of water or do a quick soak: cover with water, bring to a boil 2 minutes, turn off heat and let sit 1 hour; drain and rinse.
- In a heavy pot or Dutch oven, cook the chopped bacon over medium heat until most fat renders and edges brown, remove some fat if there's way too much but leave about 1 to 2 tablespoons for flavor.
- Add the chorizo (if using) and cook, breaking it up, until it's browned, then stir in the diced ham or smoked pork just to warm and get some color.
- If the pan looks dry, add the tablespoon of vegetable oil or lard, then add the chopped onion and sauté until translucent, about 4 to 6 minutes; stir in the minced garlic and cook 30 seconds more.
- Add the drained beans to the pot, pour in 8 cups of water or low sodium chicken broth, drop in the bay leaf, cumin, oregano, salt and pepper, and bring to a gentle boil; scrape up any browned bits from the bottom for extra flavor.
- Reduce heat to a simmer, partially cover, and cook gently until beans are tender, about 1 1/2 to 2 hours for unsoaked, less for soaked; check every 20 to 30 minutes and add more liquid as needed so beans stay mostly submerged.
- When beans are nearly tender, stir in the diced tomatoes, sliced jalapeños, and 1/4 cup chopped cilantro; simmer another 15 to 20 minutes so flavors marry and tomatoes break down a bit.
- Taste and adjust seasoning with more salt and pepper if needed; remove bay leaf, mash a few beans against the side of the pot if you want a thicker broth, or add more broth if you prefer soupy beans.
- Finish with chopped green onions and extra cilantro, squeeze fresh lime wedges over bowls when serving, and serve hot with warm tortillas, rice, or as a hearty side.
- Leftovers get better overnight; cool completely, refrigerate up to 4 days or freeze up to 3 months. When reheating, add a splash of broth or water to loosen them up and re-season if needed.
Notes
- Below you’ll find my best estimate of this recipe’s nutrition facts. Treat the numbers as a guide rather than a rule—great food should nourish both body and spirit. Figures are approximate, and the website owner assumes no liability for any inaccuracies in this recipe.
Nutrition Facts
- Serving Size: 275g
- Total number of serves: 8
- Calories: 380kcal
- Fat: 17g
- Saturated Fat: 6g
- Trans Fat: 0.2g
- Polyunsaturated: 3g
- Monounsaturated: 7g
- Cholesterol: 54mg
- Sodium: 850mg
- Potassium: 575mg
- Carbohydrates: 35g
- Fiber: 11g
- Sugar: 3.5g
- Protein: 22g
- Vitamin A: 600IU
- Vitamin C: 6mg
- Calcium: 40mg
- Iron: 1.6mg






