Try my new budgeting app Cheddar 🧀
Better than YNAB, Mint (RIP), or EveryDollar.
4.9
(26)
Export 16 ingredients for grocery delivery
Step 1
Before you plan to make the soup: place the beans in a large bowl. Pick them over to remove any debris. Cover with cool water by at least 1 inch. Let stand overnight at room temperature or in the refrigerator.
Step 2
When you are ready to cook the soup: drain the beans into a colander and rinse them well. Set aside.
Step 3
In a large pot or Dutch oven over low heat, cook the bacon over medium low, stirring it occasionally until the fat has rendered and the bacon is crisp, about 8 minutes (be patient; low and slow is the name of the game here!). With a slotted spoon, remove the bacon to a plate and set aside, leaving the drippings in the pot. If using olive oil instead, simply warm the oil in the pot.
Step 4
Increase the heat to medium. Add the onion and cook until it begins to soften, about 3 minutes. Add the garlic, carrots, and celery. Stir and cook until the carrots just begin to soften, about 5 minutes.
Step 5
Add the beans, ham bone (if using), bay leaf, and liquid. If you are NOT using a ham bone, use the broth for the liquid; if you ARE using a ham bone, use 6 cups of water *or* unsalted chicken broth. (If you use regular or even low sodium broth along with a ham bone, your soup may be too salty).
Step 6
Increase the heat and bring the soup to a boil. Once it is boiling, reduce heat to medium low. Place a lid on the pot, leaving it slightly ajar. Let the soup simmer, stirring it occasionally, until the beans are tender and beginning to break down, about 75 minutes.
Step 7
Stir in the tomatoes, paprika, chili powder, cumin, thyme, and black pepper. Simmer the soup, uncovered, for an additional 20 minutes to allow the flavors to marry. If the soup becomes thicker than you would like, add water to reach your desired consistency. Remove the bay leaf and ham bone (if using). Stir in the vinegar and reserved bacon.
Step 8
Taste the soup and add additional salt and pepper as desired. The amount of salt you need will vary based upon your broth and/or hambone; I added an additional 1/2 teaspoon salt and pinch of black pepper. Serve hot, sprinkled with Parmesan and parsley.