Beans are one of the staples of Mexican cuisine and they come in dozens of varieties. The simple recipe of cooking them gently with onion and an aromatic herb is perhaps the most common method of preparation for any and all beans in Mexico.






Skill level

Average: 3.5 (82 votes)


  • 1 cup dried pinto beans
  • 1.5 litres (6 cups) water
  • 2 small white onions, finely chopped, plus ½ cup finely chopped white onion, extra
  • 2 tomatoes, finely chopped
  • 2 sprigs epazote (see Note)
  • salt
  • 100 g queso fresco, crumbled (see Note)
  • ½ small bunch coriander, chopped
  • 2 serrano chillies, finely chopped (see Note)

Chipotle salsa

  • 2 small dried chipotle chillies
  • ½ white onion, cut into quarters
  • 4 ripe roma tomatoes
  • 1 garlic clove, peeled
  • 125 ml (½ cup) water
  • salt, to taste

Cook's notes

Oven temperatures are for conventional; if using fan-forced (convection), reduce the temperature by 20˚C. | We use Australian tablespoons and cups: 1 teaspoon equals 5 ml; 1 tablespoon equals 20 ml; 1 cup equals 250 ml. | All herbs are fresh (unless specified) and cups are lightly packed. | All vegetables are medium size and peeled, unless specified. | All eggs are 55-60 g, unless specified.


Soaking time overnight

You will need to begin this recipe 1 day ahead.

Place pinto beans in a 2.5 litre straight-sided saucepan and add 6 cups of water. Soak overnight.

The next day, bring the pinto beans to the boil and skim off any impurities that float to the surface. Add the tomato, onion and epazote and simmer for about 2 hours (depending on the beans) or until the beans are tender. To test for readiness, squeeze a bean between your fingers; it should be pasty and smooth. If required, top up with hot water while cooking.

When ready, remove the epazote stem, then mash the beans lightly with a potato masher. Add water to reach the desired consistency, but remember it will thicken on standing. Add salt to taste.

Meanwhile, to make the chipotle salsa, remove the stems from the chillies then cut open and remove the seeds. Using a comal or flat frying pan, roast the onion, tomato and garlic for 5–10 minutes or until tomatoes are roasted through and the onion is soft and translucent. Quickly toast the chilli, pressing flat with tongs to ensure even toasting, for 20 seconds each side or until puffed up slightly.

Combine all ingredients with the water and salt in a blender and process until smooth. Adjust seasoning and serve.

To serve, ladle soup into a bowl and garnish with crumbled queso fresco, chopped onion, coriander and serrano chilli then add the chipotle salsa as desired.


• Fresh epazote has no real substitute, but if unavailable fresh bay leaves or thyme will work well to add some complimentary flavour to the beans.
• If queso fresco is unavailable, use a Greek-style mild cow’s milk feta in its place.
• If serrano chilli is unavailable, jalapeño is a good substitute.