Side Dishes
This traditional Mexican beans recipe brings the soul of Mexico's lardero style to your kitchen with its deep, smoky chipotle heat and tender texture. Growing up, my neighbor Mrs. Henderson would make these beans every weekend, and the aroma alone would fill our Cincinnati kitchen with warmth.
The secret lies in slow simmering dried pinto beans with garlic, onions, and a touch of lard for that authentic richness, though I've made it vegetarian-friendly with olive oil.
The beauty of this recipe is its versatility—it's perfect as a side for tacos, a filling for burritos, or even a standalone dish when paired with warm corn tortillas. What sets it apart is the chipotle in adobo, which adds a smoky depth that transforms simple beans into something extraordinary.
Unlike quick versions, this method lets flavors meld over time, creating a dish that's both comforting and complex.
By the end, you'll have a pot of beans that's tender yet firm, infused with smoky chipotle heat and aromatic spices. The texture is just right—creamy without being mushy, with each bite offering a perfect balance of earthy beans and fiery undertones.
This is the kind of recipe that tastes like home, whether you're serving it at a family gathering or enjoying a quiet weeknight dinner.
Ready to make these beans? They're foolproof with just a few key steps—soaking the beans overnight, simmering them low and slow, and finishing with fresh cilantro and lime. Let's get started on this flavorful journey that's as much about tradition as it is about taste.
Ingredients for traditional mexican beans
Six simple ingredients transform into a smoky, tender vegetarian lardero-style bean masterpiece.
| Ingredient | Amount | Notes |
|---|---|---|
| Dried Pinto Beans 🌱 | 2 cups | Rinse before soaking overnight |
| Extra-Virgin Olive Oil 🫒 | ½ cup | For vegetarian lardero richness |
| Yellow Onions 🧅 | 2 whole | Medium, chopped into 1/4-inch pieces |
| Garlic Cloves 🧄 | 6 cloves | Peeled, lightly crushed |
| Chipotle Peppers in Adobo 🌶️ | 4 whole | With 2 tbsp adobo sauce reserved |
| Ground Cumin 🌿 | 2 tsp | Toasted for deeper flavor |
| Dried Oregano 🍃 | 1 tsp | Mexican oregano preferred |
| Bay Leaves 🌿 | 2 whole | Fresh if available |
| Salt 🧂 | 1 ½ tsp | Kosher or sea salt |
| Fresh Cilantro 🌿 | ¼ cup | Chopped, for garnish |
| Lime 🍋 | 1 whole | Juiced, for finishing |
| Vegetable Broth 💧 | 4 cups | Low-sodium preferred |
The beans are the heart of this dish—dried pinto beans give that authentic texture, but navy or black beans work too. Soak them overnight in plenty of water (I use a big bowl on the counter). For the chipotle, look for adobo sauce with visible peppers—the sauce is just as important as the peppers themselves. Trader Joe's and Mexican markets usually carry the best quality. The onions and garlic are non-negotiable for that sweet, aromatic base (don't skip browning them!), and Mexican oregano has a completely different flavor profile than Italian—worth hunting down if you're feeling ambitious.
No chipotle in adobo? Smoked paprika plus a pinch of cayenne gets you close, though it won't have that exact smoky depth. Fresh cilantro is ideal, but dried cilantro at half the amount works in a pinch (though it's not the same). Short on vegetable broth? Water plus 1 tsp soy sauce adds umami. The olive oil replaces lard perfectly—extra-virgin gives the best flavor, but any good-quality oil works. If you're making this ahead, double the lime juice when reheating to keep the acidity bright.
These beans taste even better the next day as flavors meld—keep them covered in the fridge for up to 5 days. For meal prep, portion into containers with a little extra broth to keep them moist. Freeze for up to 3 months by storing in airtight containers. The key to reheating? Warm gently on the stove with a splash of water or broth—never microwave directly from the fridge. Garnish fresh with cilantro and lime before serving, because that finishing touch makes all the difference.
Why You'll Love This Recipe
- One-Pot Magic: I swear by this recipe because it’s literally dump-and-simmer. Soak the pinto beans overnight (or use the quick-soak hack), toss them in a pot with onions, garlic, and chipotle—then let the heat do the work. No chopping, no fuss, just pure, smoky satisfaction.
- Smoky-Garlicky Bliss: That chipotle in adobo? It’s the star. The adobo sauce clings to the beans, giving them a slow-cooked depth that’s dangerously addictive—especially when you toast the garlic in olive oil first. Crispy edges, creamy beans, and a heat that lingers just right.
- Meal Prep MVP: Between us, this is my go-to for lunches all week. Make a big batch on Sunday, and you’ve got flavor-packed beans ready for tacos, burrito bowls, or even a quick quesadilla. (Yes, even on a Tuesday night when you’re too tired to think.)
- Budget-Friendly Powerhouse: Dried pinto beans are the ultimate pantry hero—cheap, shelf-stable, and packed with protein. A pound of them feeds four, and the olive oil and onions stretch further than you’d think. Honestly, it’s the kind of recipe that makes me feel like I’m feeding a crowd without breaking the bank.
Step-by-step instructions for traditional Mexican beans
Here's how to make authentic lardero-style beans with rich, smoky chipotle depth and perfect texture.
Soak and Prepare the Beans
Rinse the 2 cups dried pinto beans thoroughly under cold water to remove any debris. Place them in a large bowl and cover with plenty of cold water—at least 6 cups—then let them soak overnight at room temperature. This overnight soak ensures even cooking and prevents the beans from staying hard.
I know it's tempting to use a quick soak method, but traditional Mexican cooking relies on this overnight process. It's worth the wait—the beans will cook more evenly and develop a creamier texture. Drain and rinse the soaked beans again before cooking to remove any residual soaking liquid.
Sauté Aromatics in Olive Oil
Heat the 0.5 cup extra-virgin olive oil in a large, heavy-bottomed pot over medium heat. Add the 2 whole yellow onions, chopped into ¼-inch pieces, and cook for 5-6 minutes until they become soft and translucent. You'll see them collapse slightly and develop a golden hue around the edges.
Add the 6 peeled, lightly crushed garlic cloves and cook for another 30 seconds until fragrant. Here's where the magic happens—don't let the garlic burn. Remove the pot from heat briefly if it starts to darken too quickly. The garlic should smell sweet and inviting, not bitter.
Toast Spices and Add Chipotle
Return the pot to medium heat and add the 2 teaspoons ground cumin and 1 teaspoon dried oregano. Toast these spices for 30 seconds, stirring constantly, until you can smell their warm, earthy aromas filling your kitchen. This toasting step deepens their flavors and removes any raw taste.
Carefully add the 4 whole chipotle peppers in adobo along with 2 tablespoons of the reserved adobo sauce. The sauce contains the peppers' natural oils and flavors, so don't skip this. Stir everything together and let it cook for 1-2 minutes until the chipotles soften slightly and release their smoky essence into the oil.
Simmer Beans in Broth
Add the drained soaked beans, 2 whole bay leaves, and 1.5 teaspoons salt to the pot. Pour in the 4 cups vegetable broth, making sure all the beans are submerged. Bring the mixture to a boil over high heat, then immediately reduce to a gentle simmer. Here's the key—keep the beans at a steady simmer, not a rolling boil, which can cause them to break apart.
Partially cover the pot and let the beans simmer for 1 to 1.5 hours, stirring occasionally. You'll know they're ready when they're tender but still hold their shape. If the beans aren't quite soft after this time, add a little more broth and continue cooking. The beans should be creamy inside but not mushy.
Finish and Serve
Once the beans are tender, remove the bay leaves and discard them. Stir in the juice of the 1 whole lime and the 0.25 cup chopped fresh cilantro. Taste and adjust the seasoning with additional salt if needed. The beans should have a perfect balance of smoky chipotle heat, earthy cumin, and bright lime acidity.
Let the beans sit for 5 minutes off the heat before serving. This resting time allows the flavors to meld together. Serve warm alongside rice, tortillas, or grilled meats. The beans will thicken slightly as they cool, creating that perfect creamy consistency that makes this dish so satisfying.
Pro Tips For Making Traditional Mexican Beans
- SOAK BEANS OVERNIGHT: I learned this the hard way—rushing soaks with hot water just makes them tough. Use cold water and let them sit 8+ hours (or at least 4 with a pinch of baking soda). Pinto beans need that time to soften properly, especially if you’re skipping the pressure cooker.
- FRY ONIONS LOW AND SLOW: Don’t rush the onions—they’re the flavor base. Cook them in olive oil on medium-low for 10-12 minutes until deep golden, not browned. If they burn, you’ll taste it in every bite, and that’s a shame because they’re supposed to be sweet and caramelized.
- BLEND CHIPOTLE SMOOTH: Skip the chunky adobo sauce—blend the chipotle peppers with their sauce until completely smooth. This ensures even heat and prevents random spicy bites. I used to leave bits in, and it drove my taste buds crazy.
- SALT THE WATER LIBERALLY: Add 2-3 teaspoons of salt to the soaking water (or cooking liquid) if your beans aren’t pre-washed. This helps break down the skins and softens them faster—no need to over-salt later. Trust me, your beans will thank you.
Make-ahead tips for traditional mexican beans
Overnight Prep Advantage
Start your beans the night before—soaking them overnight isn’t just traditional, it’s essential. I always set aside 2 cups dried pinto beans in a bowl covered with 6 cups cold water on my kitchen counter. This method ensures even cooking and prevents those stubborn hard centers.
The next morning, drain and rinse them before cooking. Pro tip: If you forget to soak overnight, use the quick-soak method—boil the beans for 2 minutes, then let them sit off heat for 1 hour covered in hot water. 💡
Slow Cooker Magic
For hands-off prep, transfer your soaked beans to a 6-quart slow cooker after sautéing the aromatics. Add all remaining ingredients except cilantro and lime, then cook on low for 6-8 hours or high for 3-4 hours. The slow cooker maintains gentle heat, mimicking the traditional simmer.
I love this method for busy days—just press a button and let it work its magic while you prep other dishes. The beans will be creamy and perfectly seasoned by dinnertime.
Freezer-Friendly Batches
Make a big pot and freeze portions for future meals. After cooking, let the beans cool completely, then portion into airtight containers or freezer bags. I use quart-sized mason jars because they stack neatly in the freezer. Label each container with the date—they’ll keep for up to 3 months.
When ready to eat, thaw overnight in the fridge, then reheat gently on the stove with a splash of broth to restore that creamy texture. 🥶
Meal Prep Hack
Divide cooled beans into 4-6 meal prep containers with a little extra broth at the bottom. This prevents drying out during storage. I store mine in the fridge for up to 5 days—perfect for quick lunches or easy weeknight dinners.
To reheat, warm on the stove over medium-low heat for 5-7 minutes, stirring occasionally. Add a squeeze of lime and fresh cilantro right before serving to keep flavors vibrant. The beans will thicken slightly as they cool, making them even more satisfying the next day.
Lime and Cilantro Boost
Always finish with fresh lime juice and cilantro—this isn’t just garnish, it’s flavor insurance. I keep a small bowl of chopped cilantro and a lime wedged in my fridge for quick access. Add 1 tbsp lime juice and 2 tbsp chopped cilantro per serving when reheating.
This brightens flavors that can dull over time. If using dried cilantro, reduce to 1 tsp and add a pinch of salt to mimic the fresh herb’s brightness. 🍋
Serving Flexibility
These beans adapt perfectly to any meal. Serve them as a side with warm corn tortillas and salsa for tacos, or pair with cilantro-lime rice for a complete meal. I also love using them as a filling for burritos or quesadillas—just heat and stuff!
For a hearty breakfast, top with a fried egg and avocado. The beauty of this recipe is its versatility—make a big batch and use it all week in different ways. The flavors only get better with time, so don’t hesitate to make extra. 🌯
Nutrition facts
Frequently asked questions
Can I use canned beans instead of dried for this recipe?
While you can substitute 3 (15 oz) cans of drained pinto beans, the texture and flavor won't be the same. Canned beans lack the deep, smoky development from slow cooking dried beans. If using canned, reduce simmering time to 30 minutes and add 1 extra chipotle pepper for intensity. Dried beans create that authentic creamy yet firm texture that's hard to replicate with canned.
How do I adjust the heat level in these beans?
For milder heat, remove the seeds and membranes from the chipotle peppers before adding them. For extra spice, blend the chipotles into the adobo sauce before adding or add ½ tsp cayenne pepper. The key is balancing the smoky depth with heat—start with 2 chipotles and adjust to taste. Always taste before serving!
What's the difference between these beans and refried beans?
This recipe makes whole beans simmered in broth with spices, while refried beans are mashed until smooth. For refried-style, cook the beans until very soft, then mash with a potato masher or fork. Add a little broth if needed for creaminess. The texture becomes thick and spreadable—perfect for burritos!
Can I make these beans without lard or olive oil?
Yes! For a completely oil-free version, use 2 tbsp vegetable broth instead of olive oil to sauté the onions and garlic. The beans will still develop flavor, though the texture will be slightly lighter. Traditional Mexican cooking often uses lard, but this adaptation works beautifully for vegetarian diets.
Why did my beans turn out mushy?
Mushy beans usually result from overcooking or insufficient liquid. Always maintain a gentle simmer—not a boil—and add broth gradually if needed. For perfect texture, cook until beans are tender but still hold their shape (about 1-1.5 hours). If using dried beans, ensure proper soaking first. The beans should be creamy inside but not falling apart.
