Recipe – Smoky Mexican Charro Beans


I looked over the recipes on my blog today and was surprised to see that I’d never posted a recipe for Mexican Charro beans, the high protein staple of many Mexican kitchens! My own family ate them 3-4 times a week, sometimes more.

Serve them with scrambled eggs, pico de gallo and hot flour tortillas for a do it yourself breakfast burrito. Serve them for lunch with rice cooked in spiced chicken broth and a side of guacamole and tortilla chips, or serve them with enchiladas, inside burritos, alongside tacos, fideo, chile verde, chile relleno, tostadas or just about anything else!



  • 1 lb (2 cups) dried pinto beans, sorted and rinsed
  • 1/2 pound bacon, chopped (my Abuelita used a ham hock)
  • 2 T corn or canola oil for sautéing
  • 1 yellow onion, chopped
  • 4 cloves garlic, minced
  • 3 plum tomatoes, chopped
  • 1 jalapeño, split, deveined, seeded and minced (or just half a jalapeño if you don’t want that much heat)
  • 1/2 c chopped cilantro
  • ground cumin, salt, pepper

These beans are served whole (rather than mashed). You can also take these same beans and mash them into a smoother, bacony concoction much like you see in Mexican restaurants.

  • Put 1 lb (2 cups) of dried pinto beans in a colander and rinse them thoroughly. Remove any whole or partial beans that are significantly discolored. You also want to check for pebbles and clumps of dirt. Unless you want to eat pebbles and dirt, but I don’t recommend it.
  • To get rid of the stuff that causes gas, use one of these 2 techniques:
    1. Put the beans in a pot and cover them with water (plus about 4 extra inches). Let soak overnight and drain the beans in a colander in the morning.
    2. Cover the beans with water (plus a few extra inches) and bring them to a full boil. Turn them off and drain the beans in a colander.
  • Put the prepared beans into a crock pot and cover with up to 3 extra inches of water. Cover and cook on high up to 4 hours or medium up to 6 hours. Do not add any spices at this stage. If you add salt too early, the beans will stay hard!
  • Cut half a pound of bacon into small chunks and brown until medium-crispy.
  • In a separate skillet heat the oil and sauté 1 chopped yellow onion, 1 finely chopped jalapeño (seeded and deveined), 4 cloves minced fresh garlic and 3 diced plum tomatoes.
  • When the beans in the crockpot are soft and easily pierced with a fork, add the bacon (with some of the bacon grease, but not all) and the onion-tomato mixture.
  • Stir in 1/2 c chopped cilantro.
  • Stir in 1 t ground cumin.
  • Season with salt and pepper to taste.
  • Cook another half hour uncovered to let the bacon soften up and infuse that smoky flavor.

Serve in bowls – the liquid the beans have cooked in is delicious!


Using a large cooking spoon, remove some (not all) of the liquid from the fully cooked beans before adding the onions, tomatoes and spices. Leave at least 1 extra inch of cooking liquid or the beans will be dry.

After adding the onions, tomatoes and spices, use a potato masher to mash the beans to the desired consistency. I have a Braun hand-blender which is much easier. I just plug it in, plunge the hand-blender into the beans and blend.

Note: Black beans, not pinto beans, are more commonly served in Mexico’s southern region.


This entry was posted in Recipes, Uncategorized. Bookmark the permalink.

1 Response to Recipe – Smoky Mexican Charro Beans

  1. Rene says:

    What a coincidence! I made a pot just this Sunday! About the only difference in mine is that I used a can of fire roasted chopped tomatoes instead of fresh tomatoes. Made them with carnitas and rice and tortillas. Yum!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s