Try my new budgeting app Cheddar 🧀
Better than YNAB, Mint (RIP), or EveryDollar.
4.4
(11)
Export 10 ingredients for grocery delivery
Step 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.
Step 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.
Step 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.