Frijoles Charros (Mexican Pinto Beans With Bacon and Chilies) Recipe

A bowl of frijoles charros, Mexican cowboy beans, topped with cilantro.

Why It Works

  • Using bacon and charred tomatoes give the dish a smoky flavor without a campfire.
  • Soaking pinto beans overnight ensures a creamy texture and beans that don't fall apart.

Do side dishes at potlucks and cookouts give you trouble? The problem is, with large, informal gatherings, it's hard to gauge how long a dish will have to be held before it's served. The results are something we're all familiar with: mushy, congealed mac and cheese, crusted-over dips, soggy fried chicken, and worse. The ideal potluck or cookout dish is one that is easy to make in bulk, inexpensive, and doesn't degrade with extended heating or reheating.

I nominate frijoles charros—Mexican cowboy beans cooked with onions, garlic, tomatoes, salted pork, and chilies—as the superlative potluck dish. It meets the criteria and it's extremely delicious.

Like Texas-style chile con carne, frijoles charros (or frijoles rancheros, depending on who's talking) is a dish created by cowboys, for cowboys. As such, it's filling, hearty, and easy, requiring only one pot, some inexpensive ingredients, and a little time.

These aren't the spoonable refried beans you find at typical hot-plate Mexican restaurants. Frijoles charros are wetter, straddling the line between soup and stew. Often they're wet enough to be served in a bowl with a spoon. At the cute little Mexican fonda around the corner from my house, meals start with a small cup of soup that's nothing more than the rich liquid strained from the pot of frijoles charros. The beans themselves are served separately in shallow saucers with the main course, and even after straining, they're plenty soupy.

Spice and smoke are the key flavors here. The spice comes from fresh chiles (I use jalapeños or serranos) and there are a couple ways to achieve the requisite smokiness. Depending on your situation, the first might be the easiest: Cook them over a campfire. I'm serious about that—frijoles charros make an excellent camping dish because, after all, that's why it was invented in the first place. Dried beans are lightweight; onions, garlic, chiles, and fresh or tinned tomatoes last a long time at room temperature, as does a good hunk of salted pork. All you need are hot embers, a nice cast iron Dutch oven, and time. Keep the lid ever-so-slightly cracked as the beans cook and they'll get plenty smoky in the process.

If you're making the dish indoors, you have other options for smoke. Most recipes call for bacon and not much else. Some include canned fire-roasted tomatoes. Both of these options work great. But for better flavor, I like to start with whole tomatoes and char them myself.

Charring three roma tomatoes in a skillet with a culinary blow torch

It's a really simple process. Place ripe Roma tomatoes directly over the flame of a gas burner or on top of a hot grill, and use a pair of tongs to rotate them until their skins have blackened and started to peel away. If you have a handheld torch, it's even easier—place the tomatoes in a pan and torch away, turning them until they're blistered all over. (Folks without live fire in their kitchens have it a little tougher— just use canned fire-roasted tomatoes in those cases.)

To start the dish, sauté bacon in a Dutch oven until its fat has rendered, then add onions and chiles, cooking until softened. Add a few cloves of minced garlic—adding it after cooking the onions and peppers ensures the burn-prone garlic doesn't brown too much—and the tomatoes. Once that aromatic base has reduced a little, add beans, cooking liquid (I use chicken stock, though water works fine), along with a big pinch of salt (contrary to popular belief, salt will not cause beans to toughen as they cook) a couple of bay leaves, and a sprig of epazote.

I tried cooking the beans a number of ways. Some beans (like black beans) don't require soaking, but unless your pintos are destined to be mashed into refried beans, I recommend soaking, which allows them to cook up tender and creamy without blowing out or falling apart. If you're in a hurry, using canned beans works surprisingly well in this recipe—drain and rinse them, cut back on the total liquid by half, and make sure to simmer with the aromatic ingredients long enough for them to absorb some flavor.

But the best way to do it is to soak dried beans overnight in salted water before simmering the next day. Soaked pinto beans take only about 45 minutes to get to a completely soft, creamy consistency.

There's not really much more to it. Once the beans are done, adjust the consistency to suit your taste. If you like things soupy—think broth with fully intact beans-season and serve as is (with a sprinkle of chopped cilantro). If you like it more stew-like, use an immersion blender to mash up some of the beans. Personally, I prefer to simmer until the starch released by the beans thickens up the broth to a creamy consistency and the flavor is intensified. Whatever method you use, make sure to season the beans to taste just before serving.

If you're ever feeling down about yourself, here's a guaranteed cure: Get yourself invited to a potluck, bring these beans, and wait for the compliments and appreciation to start rolling in.

Recipe Facts



Active: 20 mins
Total: 9 hrs
Serves: 8 to 12 servings

Rate & Comment


  • 1 pound (450g) dried pinto beans

  • Kosher salt

  • 12 ounces (340g) diced bacon (see note)

  • 1 medium white or yellow onion, diced (about 8 ounces; 225g)

  • 2 serrano chiles or 1 jalapeño, minced (remove seeds and ribs if you prefer less heat)

  • 3 medium cloves garlic, minced (about 1 tablespoon; 12g)

  • 2 (14-ounce; 400g) cans diced fire-roasted tomatoes (see note)

  • 6 cups (1.4L) homemade or store-bought low-sodium chicken stock

  • 2 bay leaves

  • 2 sprigs epazote (optional; see note)

  • Large handful chopped fresh cilantro leaves and fine stems


  1. Place beans in a large bowl and cover with water by double. Add 2 tablespoons (30g) kosher salt and stir to dissolve. Let soak 8 to 12 hours. Drain and rinse.

  2. Heat bacon in a large Dutch oven over medium-high heat, stirring constantly, until fat is rendered and bacon is just starting to brown around the edges, about 5 minutes. Add onion and chilies and cook, stirring, until softened and just starting to brown, about 4 minutes. Add garlic and cook, stirring, until fragrant, about 30 seconds. Add tomatoes (see note) and cook, stirring and scraping up browned bits from the bottom of the pan, until the liquid is thick and the mixture begins to sizzle, about 3 minutes.

  3. Add beans, stock, bay leaves, 2 teaspoons (10g) kosher salt, and epazote (if using). Bring to a boil over high heat, reduce to a bare simmer, cover, and cook until beans are just tender, about 45 minutes. Remove lid and continue cooking, stirring occasionally, until beans are completely creamy and liquid has thickened into a rich, creamy broth. Season to taste with salt. Discard bay leaves, stir in cilantro, and serve. Beans can be stored in the refrigerator for up to 1 week.


In place of the canned fire-roasted tomatoes, you can use 1 1/2 pounds fresh Roma tomatoes. Char the tomatoes directly over a gas flame, on a grill, or with a torch to remove the skins. Split into quarters and cut out and discard the cores. Dice and use as directed in the recipe.

Epazote is a Mexican herb that can be found in Mexican specialty shops. If fresh epazote is unavailable, use a large pinch of dried in its place, or omit.

This recipe is great over a campfire. If cooking over a live fire, you can use salt pork in place of the bacon for a more naturally smoky flavor.