This comforting and rustic soup is a fantastic way to use leftover ham. It’s packed with protein and fiber from a mix of white and red beans, while the savory ham adds a rich, smoky depth. Sautéed onions, celery, and carrots create a classic mirepoix base, while a blend of herbs like thyme and bay leaf gives the broth a wonderfully aromatic quality. The result is a thick, satisfying soup that feels like a warm hug in a bowl, perfect for a chilly day or a simple, nourishing meal.
Ingredients
- 2 tablespoons olive oil
- 1 large yellow onion, chopped
- 2 celery stalks, chopped
- 2 carrots, peeled and chopped
- 2 cloves garlic, minced
- 1 lb leftover ham, diced into ½-inch cubes (a ham bone can also be used for extra flavor)
- 1 (15-ounce) can Great Northern beans, rinsed and drained
- 1 (15-ounce) can cannellini beans, rinsed and drained
- 1 (15-ounce) can dark red kidney beans, rinsed and drained
- 8 cups low-sodium chicken or vegetable broth
- 1 bay leaf
- 1 teaspoon dried thyme
- ½ teaspoon dried rosemary (crushed)
- Salt and freshly ground black pepper to taste
- 1 tablespoon fresh parsley, chopped, for garnish
- 1 tablespoon fresh chives, chopped, for garnish (optional)
- Crusty bread for serving
Instructions
1. Sauté the Aromatics: In a large pot or Dutch oven, heat the olive oil over medium heat. Add the chopped onion, celery, and carrots. Sauté for 8-10 minutes, stirring occasionally, until the vegetables are soft and the onion is translucent. This step is crucial for building the flavor base of the soup. Add the minced garlic and cook for another minute until fragrant.
2. Add Ham and Broth: Stir in the diced ham and cook for 2-3 minutes, allowing it to brown slightly and release its flavor. If you have a ham bone, add it to the pot at this point. Pour in the chicken or vegetable broth, scraping the bottom of the pot with a wooden spoon to lift any browned bits (this is called deglazing and adds a ton of flavor).
3. Simmer with Herbs: Add the bay leaf, dried thyme, and dried rosemary to the pot. Bring the soup to a boil, then reduce the heat to a simmer. Cover the pot and let it simmer for at least 30 minutes. This allows the flavors to meld together and the ham bone (if using) to impart its richness into the broth.
4. Add the Beans: After 30 minutes of simmering, remove the ham bone and the bay leaf from the pot. Use a slotted spoon to remove some of the vegetables and about a cup of the beans. Mash them in a small bowl with a fork and return them to the soup. This is an old trick that naturally thickens the soup without adding flour or cornstarch. Then, add the rest of the rinsed and drained beans to the pot. Stir gently to combine.
5. Simmer and Season: Bring the soup back to a gentle simmer. Cook for another 15-20 minutes, allowing the beans to heat through and absorb the flavors of the broth. Taste the soup and season with salt and freshly ground black pepper. Be mindful of the salt, as the ham and broth may already be quite salty.
6. Finishing Touches and Serving: Once the soup is ready, ladle it into bowls. Garnish each serving with a sprinkle of fresh chopped parsley and chives, if desired. Serve immediately with a side of warm, crusty bread for dipping. This soup is even better the next day, as the flavors have more time to deepen and marry together. It can be stored in an airtight container in the refrigerator for up to 3-4 days.