This post may contain affiliate links. Please read our disclosure policy. As an Amazon Associate, I earn from qualifying purchases.
These charro beans are smoky, savory, and loaded with bacon and chorizo. Charro beans (frijoles charros) are a classic Mexican pot of pinto beans simmered in a seasoned broth, somewhere between a side dish and a bean stew. They’re a little spicy, hearty enough for dinner, and just as good alongside tacos, enchiladas, or grilled meat.

Serve these charro beans with a scoop of my Mexican Rice for the classic beans-and-rice combo that always works.
Here’s Why This Charro Beans Recipe Works
Use dried or canned beans. Dried beans give you the full-from-scratch version. Canned beans get dinner moving. The flavor base stays the same either way.
Bacon + chorizo do the heavy lifting. You start by rendering them, then build everything else in that same pot.
Chipotle in adobo adds smoke and heat. Start with 1 pepper and 2 tablespoons of sauce. Use 2 peppers if you like it hotter.
You control the texture. Keep it brothy, or mash a scoop of beans and stir them back in to thicken the pot.

These charro beans make an easy side for my Chicken Mole Enchiladas. The smoky beans and rich mole are a solid match.
Recipe Tips
Use thick-cut bacon. It holds its texture better and doesn’t vanish into the pot.
Spoon off extra grease. After the bacon and chorizo brown, remove excess fat and leave about 1–2 tablespoons in the pot for flavor.
Don’t rush the simmer. That last 20–25 minutes is where the broth thickens and the flavors come together.
Adjust the texture. Mash a scoop of beans and stir them back in to thicken, or add a splash more broth if you want it soupier.
Freeze leftover chipotles. Portion them (and a little adobo sauce) into an ice cube tray so you can grab one when you need smoky heat.
Heat control trick: Start with 1 chipotle + 1 tablespoon adobo, then add more at the end if you want it hotter. (Chipotle heat can sneak up after simmering.)
Make-ahead bonus: They taste better the next day. If you’re serving guests, cook them a day ahead and reheat gently with a splash of broth.
Instant Pot shortcut: If you’re starting with dried beans, cook them using my Instant Pot Pinto Beans recipe, then drain and continue with the charro beans steps.

Frijoles Charros
Charro beans (aka frijoles charros) are proof that a pot of beans doesn’t have to be an afterthought. Once the bacon and chorizo get going, the rest is mostly simmer time, and you can make them as brothy or thick as you like. Serve them alongside tacos, enchiladas, or grilled meat, or just grab a bowl and call it dinner.
Pin this now to find it later!
Pin It
Charro Beans
If you make this recipe, please leave a star rating and comment.
Ingredients
- 1 pound dry pinto beans, or 4 cans of pinto beans
- 1 ½ teaspoons salt, for cooking dried beans; omit if using canned beans
- 2 bay leaves, if using dry beans
- 8 to 10 slices thick-cut bacon, cut into chunks
- 1 pound ground chorizo sausage
- 3 garlic cloves, minced
- 1 onion, diced
- 1 (15 ounce) can canned diced tomatoes
- 1 to 2 chipotle peppers in adobo sauce
- 2 tablespoons adobo sauce from canned chipotle
- 1 tablespoon ground cumin
- 1 tablespoon smoked paprika
- 2 teaspoons dried oregano
- salt, to taste
- 1 ½ cups chicken broth
- ½ cup chopped cilantro
Instructions
Cook the Pinto Beans
- If Starting with Dried Beans: Rinse the beans and soak them overnight if desired. If you don’t soak them, you will need to increase the cooking time. If using canned beans: Drain and rinse them, then skip to “To Make the Charro Beans.”
- Add the beans to a large pot. Add 8 cups of water, salt and bay leaves.
- Bring the beans to a boil then reduce the heat to a gentle simmer. Cover the pot and cook for 1 to 1-½ hours (2 to 3 hours if you don’t soak the beans). Check the beans for tenderness and add additional time if needed (see notes).
- Drain the beans and set them aside.
To Make the Charro Beans
- Add the chunks of bacon to a large pot. Cook until browned and starting to crisp.
- Add the ground chorizo in the pot and cook until browned. Spoon off excess grease, leaving about 1–2 tablespoons in the pot.
- Add the onion and garlic. Sauté until the onion is softened. Stir in the tomatoes.
- Mash 1 chipotle pepper (use 2 for more heat) then add it to the pot along with 2 tablespoons of the adobo sauce (do not add the whole can of chipotle peppers). Add the cumin, paprika and oregano. Taste and add salt as needed.
- Stir in the cooked pinto beans and chicken broth. If you’re using canned beans, start with 1 cup broth and add more as needed while it simmers. Bring to a gentle simmer and cook uncovered for 20 to 25 minutes. For a thicker consistency, scoop out about 1 cup of beans, mash them, and stir them back in.
- Remove from heat and stir in the cilantro.
Notes
- Do not use the whole can of chipotle peppers. You can freeze the remaining chipotle peppers and use them at a later date. If you freeze them in ice cube trays, they will be easy and convenient to use at a later date.
- For a thinner, soup-like consistency, add additional chicken broth.
Starting with dried beans?
- Soaking the beans overnight is optional. It will help them cook quicker and some say it will make them more digestible (less gassy issues).
- If your beans are old, they will take longer to cook (up to 4 hours if you cook them on the stove). Very old beans (usually, older than 4 years) may not ever get soft.
- Salt will not prevent your beans from getting tender but acidic ingredients will. Do not add tomatoes, vinegar, or lemons to the dry beans while they cook.
Nutrition
Nutrition information is automatically calculated, so should only be used as an approximation.
Like this recipe? Rate & comment below!















Omg! These were the best! Followed the recipe exactly, except added a diced jalapeno cause I like a little heat. Best beans I ever had! Thank you for posting this recipe! Will be making them again soon!
I’m so glad you loved them! The jalapeño sounds like a perfect addition for a little extra kick. Thanks for trying the recipe.
This looks super duper delicious! Can’t get enough of bacon and chorizo 🙂