Authentic Frijoles Charros Recipe: Hearty Mexican Charro Beans with Bacon & Chorizo
Frijoles Charros (Mexican Charro Beans) is a traditional, hearty, and delicious pinto bean soup that is filled with crispy bacon, spicy chorizo and other tasty ingredients. It’s a comforting dish beloved across Mexico, perfect as a satisfying main or a flavorful side.
If you’ve ever had a conversation with me about my favorite foods, you’d quickly learn that pinto beans hold a very special place in my heart. There’s something incredibly satisfying about their creamy texture and earthy flavor, so much so that I could happily enjoy them on their own for any meal. However, their true magic often shines when they are transformed into more elaborate and flavorful dishes, and Frijoles Charros is a prime example of this culinary alchemy.
Frijoles Charros, often translated as Mexican Charro Beans or even “Cowboy Beans,” is far more than just a bean soup; it’s a celebration of robust flavors and a cornerstone of traditional Mexican cuisine. The word “charro” refers to a traditional Mexican horseman or cowboy, giving this dish its evocative name. Legend has it that these hearty beans were a staple for the hardworking charros, providing them with sustained energy during their long days on the ranch. This rich history imbues every spoonful with a sense of tradition and comfort.
The Heart and Soul of Mexican Cuisine
For me, the aroma of Frijoles Charros simmering on the stove instantly transports me back to my childhood kitchen. It was always an added bonus, a special treat, when my mom would prepare this incredible dish. It starts with humble pinto beans, which are then elevated by a delicious assortment of savory meats and aromatic vegetables. In my family’s cherished recipe, we traditionally include crispy bacon, flavorful spicy chorizo, sliced hotdogs, and tender ham. This combination creates a deeply satisfying, protein-packed soup that’s bursting with flavor and is a firm favorite in countless Mexican households.
What makes Frijoles Charros truly special is its versatility. It’s substantial enough to be enjoyed as a filling dinner all on its own, perhaps with a side of warm tortillas for dipping. Yet, it also shines brightly as a side dish, complementing a wide array of Mexican entrées. Imagine it paired with succulent carne asada, tender barbacoa, or your favorite tacos – the smoky, savory notes of the beans perfectly balance and enhance these dishes. Its communal nature also makes it incredibly popular at parties, family gatherings, and especially during backyard barbecues, where a large pot of Charro Beans can feed a crowd and bring smiles to everyone’s faces.
Understanding the Origins of Charro Beans
While the exact origins are debated, Frijoles Charros is widely believed to have originated in Northern Mexico, a region known for its ranching culture. The “charro” connection is strong, as cowboys needed nourishing, easy-to-prepare meals that could be cooked over an open fire. Pinto beans, being readily available and highly nutritious, formed the base, while various preserved or fresh meats would be added to provide protein and flavor. Over time, the recipe evolved, incorporating ingredients that became readily accessible, leading to the beloved version we enjoy today.
This dish is a testament to the resourcefulness of Mexican cuisine, taking simple, wholesome ingredients and transforming them into something truly extraordinary. It’s more than just a recipe; it’s a culinary tradition passed down through generations, each family often having their own subtle variations, making it uniquely theirs.
Crafting the Perfect Frijoles Charros: Key Ingredients
The beauty of Frijoles Charros lies in its rich combination of simple, yet powerfully flavorful ingredients. Each component plays a vital role in building the complex taste profile that makes this soup so irresistible:
- Pinto Beans: The undeniable star of the show. Whether you use dried beans cooked from scratch (my preferred method for depth of flavor, especially using an Instant Pot for convenience) or quality canned beans, ensure they are tender and the cooking liquid is reserved, as it forms the flavorful base of the soup.
- Bacon: Adds a crucial smoky depth and renders fat that is used to sauté other ingredients, laying a foundational layer of flavor. Choose a good quality, thick-cut bacon for the best results.
- Chorizo: Brings a vibrant color, a spicy kick, and a unique savory richness. Mexican chorizo, which is typically fresh and crumbly, is ideal for this recipe.
- Onion & Jalapeño: These aromatics provide a fresh, pungent, and spicy counterpoint to the rich meats. Sautéing them until soft releases their sweet and spicy essences.
- Hot Dogs & Ham: While some variations might omit these, they are traditional additions in many Mexican households, contributing to the “everything but the kitchen sink” hearty nature of charro beans. They add another layer of savory meatiness and a comforting texture.
- Cilantro: Added at the end, fresh cilantro brightens the entire dish with its distinctive, herbaceous aroma, cutting through the richness and adding a pop of freshness.
Step-by-Step: How to Make Frijoles Charros (Mexican Charro Beans)
Creating this delicious soup is a straightforward process, built on layering flavors. Here’s a detailed guide to achieving the perfect Frijoles Charros:
- **Prepare Your Pinto Beans:** First and foremost, you’ll need approximately 5-6 cups of cooked pinto beans, making sure to reserve their cooking liquid. This liquid is essential as it will become the broth of your charro beans. If you’re cooking them from scratch, I highly recommend my Instant Pot Pinto Beans recipe for a quick and easy method that requires no pre-soaking.
- **Sauté the Aromatics:** In a large, heavy-bottomed pot or a Dutch oven, heat a tablespoon of olive oil over medium heat. Add your ¼ cup of diced onion and sauté gently until it becomes soft, translucent, and fragrant, typically taking about 3-5 minutes. This step releases the natural sweetness of the onion, forming a flavorful base. If you enjoy a bit of heat, this is the perfect time to add a diced jalapeño and sauté it alongside the onion until it softens.
- **Cook the Bacon:** Next, add 5 slices of diced bacon to the pot. Continue cooking on medium heat, stirring occasionally, until the bacon crisps up nicely and renders out its delicious fat. This process not only cooks the bacon to perfection but also creates a flavorful oil for the subsequent ingredients.
- **Brown the Chorizo:** Once the bacon is gloriously crispy, it’s time to introduce the ¼ to ½ pound of chorizo. Use a spoon to break up the chorizo into smaller pieces as it cooks. Stir it frequently, allowing it to brown and release its vibrant color and spicy oils, infusing the entire pot with its unique flavor. Cook until it’s thoroughly done.
- **Incorporate Additional Meats:** Now, add 4 sliced hot dogs to the mixture. Sauté them with the bacon, chorizo, and aromatics for another 2-3 minutes. This allows the hot dogs to warm through and absorb some of the rich flavors. If you’re including it, add 4 slices of diced ham at this stage as well, stirring it in briefly.
- **Manage Excess Fat:** After all the meats have cooked, you might notice a considerable amount of rendered fat in the pot. While some fat is essential for flavor, too much can make the soup greasy. Use a large spoon or ladle to carefully remove any excess oil, leaving just enough to keep the dish flavorful but not overly heavy.
- **Add Beans and Simmer:** Pour in the cooked pinto beans, along with their reserved liquid. Add enough additional water or chicken broth (if needed) to achieve your desired consistency – you want a thick, hearty soup. Bring the soup to a gentle boil, then reduce the heat to a simmer. Let it simmer for at least 5 minutes, allowing all the wonderful flavors from the meats and vegetables to meld together beautifully with the beans.
- **Infuse with Cilantro:** Finally, add 3-4 sprigs of fresh cilantro to the simmering soup. Allow it to simmer for another 2 minutes. The heat will gently release the cilantro’s fresh, herbaceous aroma, infusing the entire soup with a bright finish.
- **Season to Taste:** Before serving, taste the Frijoles Charros and adjust the seasoning as needed. Add salt and freshly ground black pepper to enhance all the flavors.
- **Serve and Enjoy:** Ladle the hearty Frijoles Charros into large bowls for a satisfying dinner, or serve it as an accompanying side dish. For an extra treat, top it with a dollop of sour cream, a spoonful of fresh salsa, a sprinkle of shredded cheese, or some tangy pickled jalapeños. Don’t forget to serve it with warm corn or flour tortillas on the side for dipping up all that delicious broth. You’ve now created an amazing, comforting meal!
Tips for Enhancing Your Frijoles Charros
While the recipe above provides a fantastic base, here are a few tips to make your Charro Beans truly exceptional:
- Quality Beans Make a Difference: Starting with good quality, freshly cooked pinto beans makes a significant impact on the final texture and flavor. If using dried beans, ensure they are not old, as older beans can take longer to cook and may not soften properly.
- Don’t Rush the Sautéing: Allow enough time for the onions to soften, the bacon to crisp, and the chorizo to brown. These steps are crucial for building the foundational layers of flavor.
- Adjust Spice Levels: If you love a lot of heat, consider adding a whole serrano pepper (or two!) to the pot while simmering, or a pinch of dried chili flakes. For less heat, omit the jalapeño entirely.
- For Deeper Flavor: A diced tomato, a pinch of cumin, or a touch of dried Mexican oregano can be added along with the beans to deepen the complexity of the broth.
- Make-Ahead Friendly: Frijoles Charros often tastes even better the next day, as the flavors have more time to meld. It’s an excellent dish for meal prepping or potlucks.
- Storage: Store leftover Frijoles Charros in an airtight container in the refrigerator for up to 3-4 days. It can also be frozen for up to 3 months. Thaw overnight in the refrigerator and reheat gently on the stovetop, adding a splash of water or broth if it has thickened too much.
I hope you enjoy every savory spoonful of this incredible Mexican classic!
Please leave me a comment below if you make this or tag me on Instagram @everydaylatina. Your feedback means the world to me!
Recipe

Frijoles Charros (Mexican Charro Beans)
by Gemma Aguayo-Murphy
Pin Recipe
Ingredients
- 5-6 cups cooked pinto beans (with liquid)
- 1 tablespoon olive oil
- ¼ diced onion
- 1 diced jalapeño (optional, see recipe)
- 5 slices of bacon, diced
- ¼-1/2 lb chorizo
- 4 sliced hot dogs
- 4 pieces sliced ham (optional, see recipe)
- 3-4 sprigs of cilantro
- salt and pepper to taste
Instructions
-
First, you will need 5-6 cups of cooked pinto beans (with liquid). Make sure to reserve their cooking liquid, as it forms the flavorful base of the soup. Click here for my recipe for Instant Pot Pinto Beans, which is a fantastic way to prepare them.
-
Heat a tablespoon of olive oil in a large pot or Dutch oven over medium heat. Add the ¼ cup of diced onion and sauté until soft, translucent, and fragrant, about 3-5 minutes. For a spicy version, add a diced jalapeño and sauté along with the onion until softened.
-
Next, add the 5 slices of diced bacon to the pot. Cook on medium heat, stirring occasionally, until the bacon crisps up nicely and renders out its flavorful fat.
-
Once the bacon is crispy, add the ¼ to ½ pound of chorizo. Break the chorizo up with a spoon as it cooks, ensuring it browns thoroughly and infuses the rendered fat with its rich, spicy essence.
-
Add the 4 sliced hot dogs to the pot and sauté them with the other meats for another 2-3 minutes. If you’re using it, you can also add 4 pieces of sliced ham here and stir to combine.
-
If the bacon and chorizo have released too much fat, use a large spoon or ladle to carefully remove some of the excess oil. This prevents the soup from becoming overly greasy while retaining plenty of flavor.
-
Add in the cooked pinto beans along with their reserved liquid. Add enough additional water or chicken broth to achieve a thick, hearty soup consistency. Bring the soup to a gentle boil, then reduce the heat and simmer for 5 minutes, allowing all the flavors to meld.
-
Finally, add the 3-4 sprigs of fresh cilantro to the beans and simmer for another 2 minutes. This step allows the cilantro’s fresh flavor to gently infuse into the soup, brightening the overall taste.
-
Taste the soup for seasoning and add salt and pepper as needed. The amount will depend on the saltiness of your beans and meats.
-
Serve the Frijoles Charros hot in a big bowl for a satisfying dinner or as a flavorful side dish. It goes wonderfully topped with sour cream, fresh salsa, or pickled jalapeños. Don’t forget to serve with some warm tortillas on the side for an authentic Mexican meal experience!
{This post contains affiliate links, which means I receive a small commission, at no extra cost to you, if you make a purchase using this link.}