Save There's something about a pot of white bean soup simmering on the stove that makes a winter afternoon feel purposeful. I discovered this particular combination on a Tuesday when I had leftover ham in the fridge and a bunch of kale that was about to wilt, and honestly, I was just trying to use things up. But the moment that broth turned a beautiful golden color and the kale softened into silky ribbons, I realized I'd accidentally created something people would actually ask me to make again. It's the kind of soup that fills your kitchen with warmth and your bowl with exactly what you need.
I made this for my sister the week after she started a new job, and she ate two bowls while telling me about her chaotic first week. She said it tasted like someone cared about her, which is probably the best compliment a soup can get. Now whenever I have people over on cold nights, this is the first thing I think to make.
What's for Dinner Tonight? 🤔
Stop stressing. Get 10 fast recipes that actually work on busy nights.
Free. No spam. Just easy meals.
Ingredients
- Cooked ham, diced (1 lb): The smoky backbone of this soup, giving every spoonful a savory depth that makes everything taste richer than it actually is.
- Yellow onion, diced (1 large): Don't skip the aromatics—they're what builds the flavor foundation that the rest of the soup rests on.
- Carrots, sliced (3 medium): They soften into tender sweetness and add natural body to the broth without any cream needed.
- Celery stalks, sliced (2): The quiet hero that no one mentions but everyone would miss if it weren't there.
- Kale, chopped with stems removed (4 cups): This is where the soup gets its nutrition and vibrancy—the leaves wilt down beautifully in those final minutes.
- Garlic, minced (3 cloves): Fresh garlic added after the softer vegetables prevents it from burning and keeps it bright.
- Cannellini beans, drained and rinsed (2 cans): The creamy texture comes from these beans, not cream, making every spoonful satisfying without heaviness.
- Low-sodium chicken broth (6 cups): Quality matters here—a good broth is the difference between soup that tastes homemade and soup that tastes like a shortcut.
- Water (1 cup): The water lets the other flavors come through instead of overwhelming them with broth intensity.
- Bay leaf (1): Remove it before serving—I learned that lesson the hard way when someone's spoon found it.
- Dried thyme (1 tsp): It ties everything together with an earthy warmth that feels intentional rather than random.
- Black pepper (1/2 tsp): Add more at the end if you like heat—taste as you go.
- Smoked paprika (1/2 tsp, optional): This is my secret nudge toward the smoky character of the ham without needing it to dominate.
- Salt, to taste: Always taste before serving and season then, since the broth and ham bring saltiness already.
- Olive oil (2 tbsp): Use good oil here since it's doing the work of bringing out the sweetness of those early vegetables.
Tired of Takeout? 🥡
Get 10 meals you can make faster than delivery arrives. Seriously.
One email. No spam. Unsubscribe anytime.
Instructions
- Build your flavor base:
- Heat the olive oil in a large pot over medium heat and add your onion, carrots, and celery together. Let them cook for five to six minutes, stirring occasionally, until they start to soften and smell sweet—you'll know it's time when the kitchen fills with that vegetable aroma.
- Add the garlic moment:
- Once the vegetables are beginning to collapse slightly, add your minced garlic and cook for just one minute until it's fragrant and golden. This quick step prevents garlic from tasting bitter while letting it perfume everything.
- Welcome the ham:
- Stir in your diced ham and let it cook for about two minutes, just until it warms through and starts to release its smoky flavor into the oil. You'll notice the aroma shift at this point.
- Pour in the soul of the soup:
- Add your drained cannellini beans, chicken broth, water, bay leaf, thyme, black pepper, and smoked paprika if you're using it. Stir everything together and bring the whole pot to a boil—this usually takes about five to eight minutes.
- Let it simmer and meld:
- Once it's boiling, reduce the heat to a gentle simmer, cover the pot, and let it cook undisturbed for twenty minutes. This is when the flavors really start talking to each other.
- Bring in the kale:
- Remove the lid and add your chopped kale, then simmer uncovered for another eight to ten minutes until the kale is tender and has taken on the soup's flavors. You'll see the leaves darken and soften—that's exactly what you want.
- Taste and adjust:
- Turn off the heat, remove the bay leaf, and taste a spoonful. Season with salt as needed and think about whether you want any other adjustments.
Save My neighbor brought me soup once when I had a bad cold, and when I finally felt well enough to cook again, I made this for her as thanks. That's when I realized this soup had become something in my regular rotation, the kind of dish you make when you want to say something without making a big production out of it.
Still Scrolling? You'll Love This 👇
Our best 20-minute dinners in one free pack — tried and tested by thousands.
Trusted by 10,000+ home cooks.
Variations Worth Trying
If you're vegetarian, simply omit the ham and swap in vegetable broth instead of chicken broth. I've added extra beans, mushrooms, or even a handful of spinach at the end to make up for the ham's smokiness and heft. For a different direction, smoked turkey works beautifully, or try a good quality sausage if you want more spice and richness.
Serving and Storage
This soup is best served in wide bowls with crusty whole-grain bread on the side for soaking up the broth. A small squeeze of fresh lemon juice over the top brightens everything just before you take that first spoonful, and it's worth doing even if you're in a hurry.
Make It Your Own
The beauty of this soup is that it forgives small changes based on what you have on hand or what you're craving that day. The framework stays strong enough that your improvisation won't derail the whole thing.
- If your kale is particularly tough, add it a few minutes earlier so it has time to soften completely.
- Taste the broth before you add salt—some brands are saltier than others, and you can always add more.
- Make a full pot and freeze half of it in portions, because there will be a moment when you desperately want homemade soup but don't have time to cook.
Save This soup taught me that sometimes the best meals come from paying attention to what you have and trusting that simple, good ingredients need very little fussing to become something memorable. It's the kind of recipe that makes you feel like you know what you're doing in the kitchen.
Recipe Questions
- → Can I substitute the ham with another protein?
Yes, smoked turkey or sausage work well as alternatives, providing similar savory notes.
- → How do I make a vegetarian version?
Omit the ham and replace chicken broth with vegetable broth. You can add extra beans or mushrooms for added texture and flavor.
- → What is the best way to prepare the kale?
Remove stems and chop kale before adding it to the simmering broth. Cook uncovered for 8-10 minutes until tender but still vibrant.
- → Can I use dried beans instead of canned?
Yes, soak and cook dried cannellini beans separately before adding them to the soup to ensure proper tenderness.
- → How can I enhance the flavor of this dish?
Adding smoked paprika and fresh thyme deepens the flavor. A squeeze of lemon juice before serving adds brightness.