Traditional bean soup made with dried white beans, bacon, onion, carrots, and celery, slowly simmered for a rich and hearty result. This classic homemade bean soup recipe delivers deep flavor from simple ingredients, with tender beans, a savory broth, and a touch of Parmesan rind. Ideal for cold weather meals, family dinners, or meal prep, this old-fashioned bean soup pairs perfectly with crusty bread and olive oil for a comforting, filling dish.

Ingredients
- ½ lb bacon, diced
- 1 large Spanish onion, finely diced (about 2 cups)
- 2 medium carrots, finely diced (about 2 cups)
- 5 celery ribs, finely diced (about 2 cups)
- Salt and freshly ground black pepper
- 2 garlic cloves, minced (optional)
- 1 lb dried Great Northern beans or cannellini beans, soaked overnight and drained
- 2 quarts (8 cups) water
- 1 Parmesan cheese rind (optional)
- Olive oil, for serving
Instructions
- In a large, heavy-bottomed pot, cook the diced bacon over medium-low heat. Stir occasionally and let it cook slowly so the fat renders out. After about 20 minutes, the bacon should be crisp. Carefully drain off most of the fat, leaving a thin coating in the pot (reserve the fat for another use if desired).
- Add the onion, carrots, and celery to the pot with the bacon. Season with salt and pepper. Sauté for about 10 minutes, until the vegetables are soft and translucent.
- Stir in the garlic, if using, and cook for 1–2 minutes until fragrant.
- Add the drained beans, water, and Parmesan rind, if using. Taste the broth, then season generously with salt and pepper; since this soup is water-based, it will need enough seasoning to bring out the flavors.
- Cover and simmer gently for about 1½ hours, or until the beans are tender. Cooking time may vary depending on the beans.
- Taste and adjust seasoning. Lightly mash a few beans against the side of the pot with a fork to slightly thicken the soup. Remove the Parmesan rind before serving.
- Serve hot with a drizzle of olive oil and crusty bread on the side.
Tips
- Soak the beans overnight for more even cooking and better texture.
- Keep the heat low and steady to prevent the beans from breaking apart.
- Season gradually and taste often, especially toward the end of cooking.

Variations and Substitutions
- Replace bacon with pancetta for a similar flavor.
- For a meatless version, omit the bacon and sauté the vegetables in olive oil; add extra Parmesan rind or a splash of soy sauce for depth.
- Add fresh herbs like thyme or rosemary during simmering for an aromatic twist.
FAQs
Can I use canned beans?
Yes, but reduce the cooking time to about 30 minutes and use less water, as canned beans are already cooked.
How do I store leftovers?
Store in an airtight container in the refrigerator for up to 4 days. The soup will thicken as it sits.
Can this soup be frozen?
Yes, freeze for up to 3 months. Thaw overnight in the refrigerator and reheat gently.
Serving Suggestions
- Serve with crusty country bread or garlic toast.
- Pair with a simple green salad for a complete meal.
- Finish with freshly grated Parmesan and cracked black pepper.
Why You’ll Love This Recipe
- Simple, pantry-friendly ingredients
- Rich, comforting flavor from slow simmering
- Versatile and easy to adapt to different tastes
- Perfect for make-ahead meals and cozy dinners
Traditional Bean Soup
6
servings15
minutes2
hours230
kcalIngredients
½ lb bacon, diced
1 large Spanish onion, finely diced (about 2 cups)
2 medium carrots, finely diced (about 2 cups)
5 celery ribs, finely diced (about 2 cups)
Salt and freshly ground black pepper
2 garlic cloves, minced (optional)
1 lb dried Great Northern beans or cannellini beans, soaked overnight and drained
2 quarts (8 cups) water
1 Parmesan cheese rind (optional)
Olive oil, for serving
Directions
- In a large, heavy-bottomed pot, cook the diced bacon over medium-low heat. Stir occasionally and let it cook slowly so the fat renders out. After about 20 minutes, the bacon should be crisp. Carefully drain off most of the fat, leaving a thin coating in the pot (reserve the fat for another use if desired).
- Add the onion, carrots, and celery to the pot with the bacon. Season with salt and pepper. Sauté for about 10 minutes, until the vegetables are soft and translucent.
- Stir in the garlic, if using, and cook for 1–2 minutes until fragrant.
- Add the drained beans, water, and Parmesan rind, if using. Taste the broth, then season generously with salt and pepper; since this soup is water-based, it will need enough seasoning to bring out the flavors.
- Cover and simmer gently for about 1½ hours, or until the beans are tender. Cooking time may vary depending on the beans.
- Taste and adjust seasoning. Lightly mash a few beans against the side of the pot with a fork to slightly thicken the soup. Remove the Parmesan rind before serving.
- Serve hot with a drizzle of olive oil and crusty bread on the side.








Leave a Reply