Charro Beans
intro
Smoky, savory pinto beans slow-simmered with bacon, chorizo, chiles, and warm spices, a hearty, crowd-pleasing staple perfect for pairing with grilled meats.
Ingredients
Steps
Rinse and sort beans
Place 2 cups (360g) dried pinto beans in a colander, rinse under cold running water for 1 minute, and pick out any small rocks or shriveled, discolored beans. Transfer rinsed beans to a large 5.5L Dutch oven or heavy-bottomed pot, cover with 6 cups (1.4L) cold water, and set aside to quick-soak for 15 minutes while you prep remaining ingredients.
Render bacon and chorizo
Drain the soaked pinto beans and set them aside in a large mixing bowl. Return the same Dutch oven to the stovetop over medium heat (350°F/175°C). Add 120g thick-cut bacon (cut into 1-inch pieces) and 115g crumbled Mexican chorizo, cooking for 6-8 minutes, stirring occasionally with a wooden spoon, until bacon is crisp at the edges and chorizo is fully browned and rendered of its bright red fat.
Sauté aromatic vegetables
To the pot with the cooked meats, add 150g diced yellow onion and 30g minced seeded jalapeño, stirring to coat in the rendered fat. Cook for 4 minutes over medium heat until onions are soft and translucent, then add 12g minced garlic and cook for 30 seconds more until sharp and fragrant, taking care not to burn the garlic which will turn bitter.
Simmer beans with broth
Return the drained pinto beans to the pot, along with 200g diced Roma tomatoes, 960ml (4 cups) low-sodium chicken broth, 2g (1 tsp) smoked paprika, 2g (1 tsp) ground cumin, and 1g (1/2 tsp) dried Mexican oregano. Stir to fully combine all ingredients, bring the liquid to a rolling boil over medium-high heat (400°F/205°C), then reduce heat to low (200°F/95°C), cover the pot with a tight-fitting lid, and simmer for 1 hour, stirring every 15 minutes to prevent beans from sticking to the pot bottom, until beans are tender but not mushy.
Adjust seasoning and thickness
After 1 hour of covered simmering, remove the lid, stir in 5g (1 tsp) kosher salt and 1g (1/2 tsp) freshly ground black pepper. If the beans are too thick, add up to 1/2 cup (120ml) hot water to reach your preferred brothy, soup-like consistency; if too thin, simmer uncovered for 5-7 minutes over medium-low heat to reduce. Taste a bean and a spoonful of broth, adding extra salt in 1g pinches if needed.
Garnish and serve hot
Ladle the finished charro beans into warm ceramic bowls, top each serving with 2.5g (1 tbsp) chopped fresh cilantro, and serve with lime wedges cut from 1 whole lime for squeezing over top, alongside grilled steak, chicken, warm tortillas, or cornbread as desired.
Tips
2.For extra smoky heat, add 1 diced chipotle pepper in adobo sauce when you add the dried spices, for a deep, smoky flavor and subtle, warm kick.
3.Charro beans taste even better the second day, as the flavors meld and deepen as they chill; store in an airtight container in the refrigerator for up to 5 days, reheating gently over low heat on the stovetop.

OMG these are SO good! I made these for our Sunday family dinner last night and even my super picky 7 year old asked for seconds. I added a little extra bacon because we’re bacon fiends around here, and it was chef’s kiss. Way easier than I thought it would be for such a flavorful side, already planning to make a double batch for our neighborhood potluck next weekend! Wait, quick question—would these freeze okay for meal prep?
Made these to go with my smoked brisket over the weekend and they totally stole the show! All my buddies at the cookout were hounding me for the recipe, I couldn’t believe how low-effort they were even with the 90 minute cook time—most of that is just hands-off simmering, no constant stirring required. 10/10, these will be a regular at all my BBQs from now on.
My kids loved it!!! I was worried the flavors would be too bold for my two picky toddlers but they gobbled up their whole servings and even asked for more when I packed leftovers for lunch the next day. I skipped the jalapeño to keep it mild for them, and tossed in a can of diced tomatoes with green chiles for a little extra veggie boost. Total game changer for our weekly dinner rotation, and so low effort even on chaotic nights when we get home late from soccer practice.
I grew up eating my abuela’s frijoles charros and I’ve been chasing that exact flavor for years since she passed. This recipe is the closest I’ve ever gotten!!! The mix of bacon, chorizo, and that subtle kick of jalapeño is exactly how she made it. I soaked my beans overnight like she taught me, which cut the simmer time by about 20 minutes, and they came out perfect. Thank you so much for sharing this authentic version—no weird canned tomato sauce shortcuts here!
Super easy to throw together on a weeknight! I used spicy chorizo instead of mild and tossed in an extra serrano for a little extra heat, and the flavor was chef’s kiss. Only thing is mine came out a little soupier than I expected? Did I mess something up? I followed the liquid measurements exactly.