Feijão pinto à mexicana
A pot of dried pinto beans simmered low and slow with onion, garlic, and bay until each bean turns velvety, then finished with a skillet sofrito of tomato, jalapeño, cumin, and Mexican oregano. Cooking the aromatics separately and stirring them in near the end keeps the seasonings bright instead of boiled-out, while salting after the beans soften guarantees creamy centers and a savory, spoonable broth you will want to sip on its own.
Sort and rinse 450 g (1 lb) dried pinto beans, then combine them in a 5- to 6-quart pot with 2.5 L (10 cups) water, half a white onion, 3 smashed garlic cloves, and 2 bay leaves. Bring to a boil, skim any foam, then drop to a bare simmer, partially cover, and cook 60 minutes. Meanwhile, sauté the remaining chopped onion, minced garlic, and a chopped jalapeño in 2 tbsp oil, then add 2 chopped Roma tomatoes, 1 tsp cumin, 1 tsp Mexican oregano, and 2 tsp chili powder and cook until jammy. Stir the sofrito and 2 tsp salt into the beans and simmer 45 minutes more, until the beans are creamy inside and the broth is lightly thickened. Rest 15 minutes off heat, fish out the onion half and bay leaves, and serve with cilantro and lime.
- Salt only after the first hour of simmering — beans seasoned too early in hard, salty water can stay firm and take much longer to soften.
- Keep the liquid at a lazy simmer, not a boil; a rolling boil blows out the skins and turns the pot to mush before the centers are done.
- Cook the tomato-cumin sofrito in a separate skillet until it darkens and thickens — that concentrated base is what makes the broth taste Mexican rather than plain.
Equipment
- 5- to 6-quart Dutch oven or heavy pot with lid
- Colander or fine-mesh sieve
- Medium skillet
- Chef's knife and cutting board
- Wooden spoon
- Ladle
Ingredientes
Beans and pot aromatics
- 450 g dried pinto beans, sorted for stones and rinsed
- 2.5 L water, plus more as needed to keep beans covered
- white onion, halved, left in one piece so it is easy to remove
- garlic cloves, smashed and peeled
- bay leaves
Mexican-style sofrito
- 30 ml vegetable oil, or melted lard for a classic, richer flavor (not vegan)
- white onion, finely chopped
- garlic cloves, minced
- jalapeño, stemmed and finely chopped; keep the seeds for more heat
- 250 g Roma tomatoes, cored and chopped
- 2 g ground cumin
- 1 g dried Mexican oregano, or regular oregano
- 5 g chili powder, or 2 tsp ancho chile powder
To finish
- 12 g fine sea salt, plus more to taste; added only after the beans begin to soften
- 10 g fresh cilantro, chopped, for serving
- lime, cut into wedges, for serving; optional
Modo de preparo
- ETAPA01
Spread the dried pinto beans on a sheet pan or plate and pick out any pebbles, clumps of dirt, or shriveled beans. Transfer to a colander and rinse well under cold water. No soak is required for this method, though a soaked pot will finish 30 to 45 minutes faster.
- ETAPA02
Put the beans in a 5- to 6-quart Dutch oven with 2.5 L (10 cups) water, the onion half, smashed garlic cloves, and bay leaves. Set over high heat and bring to a full boil, skimming off any gray foam that rises to the surface.
- ETAPA03
Reduce the heat so the surface barely bubbles, set the lid on slightly ajar, and simmer for 60 minutes, stirring once or twice. If the liquid ever drops below the level of the beans, top up with hot water. Do not add salt yet. At the end of the hour the beans should be tender at the edges but still slightly firm at the center.
- ETAPA04
While the beans simmer, heat the oil in a medium skillet over medium heat. Cook the chopped onion and jalapeño until soft and lightly golden, about 5 minutes, then stir in the minced garlic for 30 seconds. Add the tomatoes, cumin, oregano, and chili powder and cook, stirring, until the mixture darkens and thickens into a rough paste, about 4 minutes.
- ETAPA05
Scrape the sofrito into the bean pot and stir in the salt. Continue simmering, uncovered now, until the beans are fully creamy inside and the broth has thickened slightly from the starch, about 45 minutes more. Older beans can need an extra 20 to 30 minutes, so cook to texture, not to the clock.
- ETAPA06
Taste five beans from different spots in the pot; every one should crush easily against the roof of your mouth with no chalky center. For a thicker broth, mash a ladleful of beans against the side of the pot and stir it back in. Adjust the salt, then remove the spent onion half and bay leaves.
- ETAPA07
Turn off the heat, cover, and let the pot stand for 15 minutes so the beans finish absorbing the seasoned broth. Ladle into bowls with plenty of liquid, and top with chopped cilantro and a squeeze of lime.
Make ahead
These beans genuinely improve overnight as the broth deepens, so cooking them a day ahead is a smart move for a party. You can also soak the sorted beans in cold water for 8 to 12 hours to shave 30 to 45 minutes off the simmer — drain, rinse, and reduce the initial water to 2 L (8 cups). The sofrito can be made up to 3 days ahead and refrigerated.
Storage
Cool the beans in their broth, then refrigerate in an airtight container for up to 5 days; the broth keeps them from drying out. Freeze in their liquid, with headspace, for up to 3 months. Reheat gently on the stovetop with a splash of water, since the broth thickens as it chills.
Variations
Charro-style with bacon
For a meaty, smoky pot closer to frijoles charros, cook 115 g (4 slices) chopped bacon in the skillet first, then build the sofrito in the rendered fat instead of oil. Stir it all into the beans as directed. Note this version is no longer vegetarian or vegan.
Smoky chipotle (still vegan)
Stir 1 to 2 minced chipotles in adobo plus 1 tsp of the adobo sauce into the sofrito along with the tomatoes. You get bacon-like smokiness and a slow-building heat with no animal products.
Quick refried beans
The next day, heat 3 tbsp oil or lard in a skillet, add 3 cups of the cooked beans with about 240 ml (1 cup) of their broth, and mash while frying until thick and glossy, about 8 minutes. Perfect alongside eggs or spread inside tortas.
Serve with
Nutrition per serving
Nutrition values are estimates based on the metric measurements. Adjust as needed.
Perguntas frequentes
Do I have to soak the beans first?
No. This pinto beans recipe is written for unsoaked beans, which simply simmer about 30 to 45 minutes longer and, many cooks find, hold their shape and flavor better. If you prefer to soak, cover the sorted beans with cold water for 8 to 12 hours, drain, and start checking for doneness after about 45 minutes of simmering.
Why are my beans still hard after two hours?
Almost always it is old beans — dried beans past a year or two lose the ability to soften on schedule — or very hard, mineral-heavy tap water. Keep simmering and add hot water as needed; even stubborn beans usually give in with another 30 to 60 minutes. Buying beans from a store with high turnover is the single best fix.
When should I add the salt?
This recipe adds salt after the first hour, once the beans have begun to soften. Salting the water at the start is fine with fresh beans and soft water, but with older beans or hard water it can slow softening noticeably, so waiting is the safer play. What you should never do is skip it: unsalted beans taste flat no matter how good the sofrito is.
Can I make this pinto beans recipe in a slow cooker or Instant Pot?
Yes. For a slow cooker, combine everything from the first ingredient group and cook on high 6 to 7 hours, stirring in the sofrito and salt for the last hour. In an Instant Pot, pressure cook the unsoaked beans with the pot aromatics and 2 L (8 cups) water for 35 minutes with natural release, then stir in the sofrito and salt and simmer on Sauté for 10 minutes.
Are these the same as charro or borracho beans?
They are close cousins. This is a vegetarian pot-bean method seasoned with a tomato-jalapeño sofrito; frijoles charros add bacon, chorizo, or other pork, and borracho beans add beer to the broth. Use the charro variation above if you want the meaty version — the simmering technique is identical.
Cooked this? Rate it.
Real ratings from real cooks. We only show a score once enough of you have weighed in — no fabricated stars.