Try my new budgeting app Cheddar 🧀
Better than YNAB, Mint (RIP), or EveryDollar.
Export 12 ingredients for grocery delivery
Step 1
Rinse 1 pound dried navy beans and remove and discard split, broken, or discolored beans. Place the beans and 4 cups hot water in a large, heavy pot or Dutch oven. Bring to a boil over medium-high heat. Boil for 2 minutes, then remove the pot from heat. Cover and let soak for 1 hour.
Step 2
Meanwhile, finely chop 1 medium yellow onion (1 1/2 to 2 cups), 1 large carrot (1/2 cup), and 1 medium celery stalk (1/2 cup). Finely chop 2 garlic cloves. Dice 8 ounces thick-cut cooked ham (1 cup).
Step 3
When the beans are done soaking, pour through a colander to drain. Wipe the pot clean.
Step 4
Heat 2 tablespoons olive oil in the same pot over medium heat until shimmering. Add the onion, carrot, and celery, and cook, stirring occasionally, until fragrant and begin to soften, about 3 minutes. Add the ham, garlic, 2 bay leaves, 2 teaspoons black pepper, 1 teaspoon kosher salt, 1/2 teaspoon dried thyme, and 1/2 teaspoon dried rosemary. Sauté until fragrant, about 1 minute.
Step 5
Add the beans and stir to combine. If desired, nestle 1 smoked ham hock into the bean mixture. Add 6 cups low-sodium chicken broth and bring to a boil over high heat. Reduce the heat to medium-low and simmer gently, stirring occasionally, until the beans are tender, 1 hour 30 minutes to 1 hour 45 minutes.
Step 6
Remove the ham hock. Add 2 tablespoons unsalted butter and stir until melted. Taste and season with more kosher salt as needed.