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 1/2 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).
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 1/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 1/2 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.