Milk Street Mexican Favorites (Ep 402)



Mexican Stewed Beans with Salsa Fresca

Start to finish: 1 3/4 hours, plus overnight soak and resting | Servings: 6 to 8

In Mexico City, we learned to prepare traditional stewed beans, as well as a version enriched with pork. Sofrito—a sauté of aromatics cooked separately from the dish’s central ingredient(s)—is a key flavoring for the beans. Our sofrito consists of onion, garlic, tomatoes and jalapeños cooked down to concentrate their essences and is added only after the beans are fully cooked to preserve its fresh flavors. Instead of the pinto beans so common in Mexican cooking, we opted to use cranberry beans (also called Roman or borlotti beans). We found that the pinto beans available in the U.S. do not cook up with the same plumpness and velvety texture as the ones we tasted in Mexico; cranberry beans were a closer approximation. Though tan in color with speckles of red, dried cranberry beans, when cooked, resemble pinkish beige pinto beans. If you wish to make this dish with pork, see the recipe below; it yields a meaty broth for cooking the beans and shredded pork for stirring in at the end. A fresh tomato salsa served on the side brightens and lightens the earthiness of the beans. The most efficient way to approach this multi-component recipe is to prep and cook the sofrito during the 1 hour that the beans simmer and make the salsa while the cooked beans rest for 30 minutes. Note that the pork and broth need to be made before you begin cooking the beans, but can be made up to three days in advance.

Don’t forget to soak the cranberry beans overnight. Soaked beans cook more evenly and quickly than unsoaked ones. A couple tablespoons of salt in the soaking water produces a creamier, more velvety texture in the cooked beans.


For the beans:

  • 1 pound dried ranberry beans (see note), picked over and rinsed
  • Kosher salt and ground black pepper
  • 2 tablespoons lard or neutral oil
  • 1 medium white onion, chopped
  • 2 medium garlic cloves, thinly sliced
  • 1 bunch cilantro, stems finely chopped, leaves roughly chopped, reserved separately
  • 1½ quarts low-sodium chicken broth, pork broth (recipe follows; optional) or water

For the sofrito:

  • 2 tablespoons lard or neutral oil
  • 1 large white onion, chopped
  • Kosher salt and ground black pepper
  • 4 medium garlic cloves, minced
  • 2 pounds ripe tomatoes, cored and roughly chopped
  • 2 jalapeño chilies, stemmed, seeded and finely chopped

To serve:

  • 3 cups shredded pork (recip follows; optional)
  • Salsa fresca (recipe follows)


To prepare the beans, in a large bowl, combine the beans with 2 quarts water and 2 tablespoons salt; stir until the salt is dissolved. Cover and soak the beans overnight at room temperature.

Drains the beans. In a large Dutch oven, heat the oil over medium until shimmering. Add the onion and 1 teaspoon salt, then cook, stirring occasionally, until it begins to brown, about 5 minutes. Stir in the garlic and cilantro stems. Cook, stirring, until fragrant, about 30 seconds. Stir in the beans and broth, then bring to a boil over medium-high. Cover, reduce to low and cook, stirring occasionally, until the beans are tender, about 1 hour.

When the beans are done, remove the pot from the heat and let stand uncovered for 30 minutes to allow the liquid to thicken slightly. Return the beans to a simmer over medium, stirring occasionally. Add the sofrito and shredded pork (if using). Cook, stirring occasionally, until heated through, about 5 minutes. Taste and season with salt and pepper, then stir in the cilantro leaves. Serve with salsa fresca on the side.


Shredded Pork and Pork Broth for Stewed Beans

Start to finish: 1 cups shredded meat and 1½ quarts broth


  • 2 pounds boneless pork shoulder, trimmed and cut into 1½-inch cubes
  • 2 jalapeño chilies, stemmed
  • Kosher salt



In a large pot, combine the pork, jalapeños, 1 teaspoon salt and 7 cups water. Bring to a boil over high, then reduce to low, cover and cook until a skewer inserted into the pork meets no resistance, 60 to 75 minutes.

Using a slotted spoon, transfer the pork to a medium bowl; set aside to cool slightly. Meanwhile, pour the broth through a fine mesh strainer set over a large bowl and let cool.

When the pork is cool enough to handle, shred into bite-size pieces, discarding any fat and gristle. Cover both the broth and shredded meat and refrigerate until ready to use or up to 3 days.


Salsa Fresca

Start to finish: 30 minutes | Makes 2 cups


  • 1 pound ripe tomatoes, cored and finely chopped
  • 3 tablespoons finely chopped red onion
  • ¼ cup lightly packed fresh cilantro, chopped
  • ½ jalapeño chili, stemmed, seeded and minced 2 teaspoons white vinegar
  • 2 teaspoons extra-virgin olive oil
  • Kosher salt


In a medium bowl, stir together the tomatoes, onion, cilantro, jalapeño, vinegar, oil and 1 teaspoon salt. Let stand at room temperature for 15 minutes. Using a slotted spoon, transfer the salsa to a serving bowl, leaving behind the liquid. Taste and season with salt.


Mexican Sweet Corn Cake

Start to finish: 1¼ hours (25 minutes active), plus cooling  Servings: 8 to 10

This simple baked treat is ubiquitous in Mexican food markets, street stalls and restaurants. Called panqué de elote, pan de elote or pastel de elote, its texture lands somewhere between cake and cornbread while hinting at custard. At La Cocina de Mi Mamá in Mexico City, we had it for breakfast, as it’s commonly served. But finished with a dusting of powdered sugar, it also makes a casual, homey dessert. Cornmeal is not a typical ingredient in panqué de elote; we add a small amount to account for the fact that the fresh Mexican corn used for making this type of cake is starchier and drier than the fresh corn available in the U.S. If you have more than 250 grams (1½ cups) corn after cutting the kernels from the ears, it’s best to save the extra for another use rather than use it in this recipe; the additional moisture may make the cake too wet. Yellow corn yields a cake with a warm golden hue, but white corn also works.

Don’t use frozen corn—it results in a dense, gummy texture. Made with fresh corn, the cake’s crumb is much lighter and softer. After adding the flour mixture to the corn puree, don’t whisk vigorously. Gentle mixing, just until no pockets of flour remain, will minimize gluten development so the cake bakes up tender.


  • 3 medium ears fresh corn, preferably yellow, husked
  • 36 grams (¼ cup) fine yellow cornmeal
  • 14-ounce can sweetened condensed milk
  • 57 grams (¼ cup) plain whole-milk yogurt
  • 165 grams (1¼ cups plus 2 tablespoons) all-purpose flour
  • 2 tablespoons cornstarch
  • 2 teaspoons baking powder
  • ½ teaspoon kosher salt
  • 2 large eggs, plus 2 large egg yolks
  • ½ cup grapeseed or other neutral oil
  • Powdered sugar, to serve


Heat the oven to 350°F with a rack in the middle position. Mist a 9-inch round cake pan with cooking spray. Using a chef’s knife, cut the kernels from the ears of corn. Measure 250 grams (1½ cups) kernels and add to a blender; if you have extra corn, reserve it for another use. To the blender, add the cornmeal, condensed milk and yogurt, then puree until smooth, 15 to 20 seconds, scraping down the blender as needed. Let stand for 10 minutes. Meanwhile, in a small bowl, whisk together the flour, cornstarch, baking powder and salt.

To the blender, add the whole eggs and yolks, and the oil; blend on low until smooth, 5 to 10 seconds. Pour the puree into a large bowl. Add the flour mixture and whisk just until evenly moistened and no lumps of flour remain. Transfer to the prepared cake pan and bake until golden and a toothpick inserted into the center of the cake comes out clean, 40 to 45 minutes.

Cool in the pan on a wire rack for 30 minutes. Run a paring knife around the pan to loosen the cake, then invert directly onto the rack and lift off the pan. Re-invert the cake onto a serving platter and cool completely, about 1 hour. Serve dusted with powdered sugar.


Tortilla Soup

Start to finish: 40 minutes | Servings: 4 to 6

This sopa de tortilla is a simple, homestyle tortilla soup like we had in Mexico. It is pureed for smoothness; contrasting colors, flavors and textures are added with garnishes. For the best results, ripe tomatoes are key—in non- summer months, we find Campari tomatoes to be a good option, as well as cherry or grape tomatoes. The tomatoes need only to be cored before they’re tossed into the pot (cherry or grape tomatoes can be used whole). Tortilla chips, called totopos in Mexico, are used in two ways: they’re cooked and pureed with the base to thicken the soup, then fresh chips are added to the serving bowls before the soup is ladled in.

Don’t blend all of the soup mixture at once. If the blender jar is too full with hot liquid, when the machine is turned on, the rapid burst of steam may loosen the lid and cause splattering.


  • 2 tablespoons lard or neutral oil
  • 1 large white onion, halved and thinly sliced
  • 6 medium garlic cloves, smashed and peeled
  • 2 jalapeño chilies, stemmed, seeded and sliced
  • 1 teaspoon cumin seeds
  • 1 bunch cilantro, stems roughly chopped, leaves chopped, reserved separately
  • 2 pounds ripe tomatoes (see note), cored
  • 2 cups yellow or white tortilla chips, plus more to serve
  • 1½ quarts low-sodium chicken broth
  • 1 teaspoon white sugar
  • Kosher salt and ground black pepper
  • Sour cream or crumbled cotija cheese, to serve
  • Diced avocado, to serve (optional)


In a large pot over medium-high, heat the lard until shimmering. Add the onion and cook, stirring, until softened, about 5 minutes. Add the garlic, jalapeños, cumin and cilantro stems, then cook, stirring, until fragrant, about 30 seconds. Stir in the tomatoes, tortilla chips, broth and sugar. Bring to a boil, then cover, reduce to medium and cook, stirring, at a simmer, until the tomatoes have softened and their skins begin to peel away, about 10 minutes.

Remove the pot from the heat and cool, uncovered, for 5 minutes. Using a blender and working in batches so the jar is never more than half full, puree the mixture until smooth; transfer each batch to a large bowl.

Wipe out the pot, then pour in the puree. Cook over medium, stirring often, until heated, about 5 minutes. Taste and season with salt and pepper, then stir in half of the chopped cilantro leaves. To serve, add tortilla chips to individual bowls, then ladle in soup. Sprinkle with the remaining chopped cilantro leaves and top with sour cream and avocado (if using).

© 2020 Christopher Kimball’s Milk Street. All Rights Reserved.