A bowl of white bean and rosemary soup
Recipes · For the Table

White Bean & Rosemary Soup

Creamy cannellini beans simmered with rosemary, garlic and Parmesan, finished with lemon and a fragrant rosemary oil.

There are certain dinners that ask very little of you.

A pot on the stove. A few things from the pantry. Bread torn rather than sliced.

This is one of them.

The beans soften into the broth just enough to make it creamy without becoming heavy, while rosemary, garlic and Parmesan give it the kind of slow-cooked flavor that usually takes much longer.

It is simple food, but it doesn't feel like settling.

Prep
15 minutes
Cook
30 minutes
Total
45 minutes
Serves
4–6

What You'll Need

For the Soup

  • 3 tablespoons extra-virgin olive oil
  • 1 medium yellow onion, finely chopped
  • 2 celery stalks, finely chopped
  • 4 garlic cloves, finely chopped
  • 1 tablespoon finely chopped fresh rosemary
  • 3 (15-ounce) cans cannellini beans
  • 4 cups low-sodium chicken or vegetable stock
  • 1 Parmesan rind, about 2–3 inches
  • 1 bay leaf
  • 1/2 teaspoon kosher salt, plus more to taste
  • Freshly ground black pepper
  • 1 tablespoon fresh lemon juice
  • 1/2 cup finely grated Parmesan

For the Rosemary-Parmesan Oil

  • 3 tablespoons extra-virgin olive oil
  • 1 teaspoon finely chopped fresh rosemary
  • 1 teaspoon finely grated lemon zest
  • 2 tablespoons finely grated Parmesan
  • Flaky salt, optional

For Serving

  • Crusty sourdough or country bread

The Simple Method

01

Start with the Aromatics

Warm 3 tablespoons olive oil in a Dutch oven or heavy pot over medium-low heat. Add the onion, celery and a small pinch of salt.

Cook for 7–8 minutes, stirring occasionally, until everything is soft and translucent but not browned.

02

Wake Up the Rosemary

Add the garlic and 1 tablespoon chopped rosemary.

Cook for about 1 minute, just until the kitchen begins to smell like both.

Don't let the garlic brown.

03

Don't Rinse Every Bean

Drain two cans of cannellini beans and rinse them.

Pour the third can through a strainer set over a bowl, reserving its liquid. Set the liquid aside and briefly rinse those beans.

04

Build the Soup

Add all of the beans, stock, Parmesan rind, bay leaf, 1/2 teaspoon salt and several turns of black pepper.

Bring to a gentle simmer and cook uncovered for about 15 minutes.

05

Make It Creamy Without Cream

Scoop about 1 1/2 cups of the beans and broth into a bowl and mash very well with a fork or potato masher.

Stir the mashed beans back into the pot along with 1/4 cup of the reserved bean liquid.

Simmer for another 5 minutes.

The soup should be creamy around the beans while still clearly being a bean soup, not a purée.

06

Make the Rosemary Oil

While the soup finishes, warm 3 tablespoons olive oil and 1 teaspoon rosemary in a small skillet over low heat for about 1–2 minutes, until fragrant.

Remove from the heat. Let it cool for a minute, then stir in the lemon zest and Parmesan.

07

Finish the Pot

Remove the Parmesan rind and bay leaf.

Stir in the lemon juice and 1/2 cup Parmesan.

Taste before adding more salt. The rind, stock and Parmesan have already brought plenty to the pot.

Add black pepper and another splash of stock if you'd like the soup a little looser.

08

Bring It to the Table

Ladle the soup into shallow bowls.

Spoon a little rosemary-Parmesan oil over each one, finish with more Parmesan and black pepper, and add flaky salt if it needs it.

Put warm bread alongside.

A Few Things That Make This Easier

Don't Rinse Every Bean

That cloudy liquid isn't useless. A little of its starch gives the broth body without adding cream or flour.

Save Your Parmesan Rinds

Keep them in a bag in the freezer. Drop one into soups and stews when they need something savory in the background.

Don't Boil It Hard

Once the beans go in, a gentle simmer is enough. We're trying to coax some starch from them while keeping plenty of beans intact.

Make It Vegetarian

Use vegetable stock and Parmesan made without animal rennet if that's important to you. The beans, rosemary and aromatics provide plenty of character without chicken stock.

The Soup Gets Better While It Sits

Make it earlier in the day or a day ahead. It will thicken as it rests, so loosen it with a little stock or water while reheating.

If You Want a Little More

Add a handful of baby kale or spinach during the last few minutes, or scatter crisp prosciutto over the bowls. Neither is necessary.

It's the piece of bread at the end.

The one you drag through the bottom of the bowl after most of the soup is gone, catching the rosemary oil and Parmesan that settled there.

I think every good soup should leave something worth chasing with bread.

Make enough for tomorrow.

This is the kind of soup that waits well in the refrigerator and asks almost nothing of you when you come back to it.

Some dinners are even better the second time around.

Hidden & Seen HS

White Bean & Rosemary Soup

Creamy cannellini beans simmered with rosemary, garlic and Parmesan, finished with lemon and a fragrant rosemary oil.

Prep
15 minutes
Cook
30 minutes
Total
45 minutes
Serves
4–6

What You'll Need

For the Soup

  • 3 tablespoons extra-virgin olive oil
  • 1 medium yellow onion, finely chopped
  • 2 celery stalks, finely chopped
  • 4 garlic cloves, finely chopped
  • 1 tablespoon finely chopped fresh rosemary
  • 3 (15-ounce) cans cannellini beans
  • 4 cups low-sodium chicken or vegetable stock
  • 1 Parmesan rind, about 2–3 inches
  • 1 bay leaf
  • 1/2 teaspoon kosher salt, plus more to taste
  • Freshly ground black pepper
  • 1 tablespoon fresh lemon juice
  • 1/2 cup finely grated Parmesan

For the Rosemary-Parmesan Oil

  • 3 tablespoons extra-virgin olive oil
  • 1 teaspoon finely chopped fresh rosemary
  • 1 teaspoon finely grated lemon zest
  • 2 tablespoons finely grated Parmesan
  • Flaky salt, optional

For Serving

  • Crusty sourdough or country bread

The Simple Method

  1. Start with the Aromatics

    Warm 3 tablespoons olive oil in a Dutch oven or heavy pot over medium-low heat. Add the onion, celery and a small pinch of salt.

    Cook for 7–8 minutes, stirring occasionally, until everything is soft and translucent but not browned.

  2. Wake Up the Rosemary

    Add the garlic and 1 tablespoon chopped rosemary.

    Cook for about 1 minute, just until the kitchen begins to smell like both.

    Don't let the garlic brown.

  3. Don't Rinse Every Bean

    Drain two cans of cannellini beans and rinse them.

    Pour the third can through a strainer set over a bowl, reserving its liquid. Set the liquid aside and briefly rinse those beans.

  4. Build the Soup

    Add all of the beans, stock, Parmesan rind, bay leaf, 1/2 teaspoon salt and several turns of black pepper.

    Bring to a gentle simmer and cook uncovered for about 15 minutes.

  5. Make It Creamy Without Cream

    Scoop about 1 1/2 cups of the beans and broth into a bowl and mash very well with a fork or potato masher.

    Stir the mashed beans back into the pot along with 1/4 cup of the reserved bean liquid.

    Simmer for another 5 minutes.

    The soup should be creamy around the beans while still clearly being a bean soup, not a purée.

  6. Make the Rosemary Oil

    While the soup finishes, warm 3 tablespoons olive oil and 1 teaspoon rosemary in a small skillet over low heat for about 1–2 minutes, until fragrant.

    Remove from the heat. Let it cool for a minute, then stir in the lemon zest and Parmesan.

  7. Finish the Pot

    Remove the Parmesan rind and bay leaf.

    Stir in the lemon juice and 1/2 cup Parmesan.

    Taste before adding more salt. The rind, stock and Parmesan have already brought plenty to the pot.

    Add black pepper and another splash of stock if you'd like the soup a little looser.

  8. Bring It to the Table

    Ladle the soup into shallow bowls.

    Spoon a little rosemary-Parmesan oil over each one, finish with more Parmesan and black pepper, and add flaky salt if it needs it.

    Put warm bread alongside.

A Few Things That Make This Easier

Don't Rinse Every Bean

That cloudy liquid isn't useless. A little of its starch gives the broth body without adding cream or flour.

Save Your Parmesan Rinds

Keep them in a bag in the freezer. Drop one into soups and stews when they need something savory in the background.

Don't Boil It Hard

Once the beans go in, a gentle simmer is enough. We're trying to coax some starch from them while keeping plenty of beans intact.

Make It Vegetarian

Use vegetable stock and Parmesan made without animal rennet if that's important to you. The beans, rosemary and aromatics provide plenty of character without chicken stock.

The Soup Gets Better While It Sits

Make it earlier in the day or a day ahead. It will thicken as it rests, so loosen it with a little stock or water while reheating.

If You Want a Little More

Add a handful of baby kale or spinach during the last few minutes, or scatter crisp prosciutto over the bowls. Neither is necessary.