Creamy Skillet White Beans with Parmesan
This post may contain affiliate links. Please read my disclosure policy.
Italian-style cannellini beans simmer in a garlicky cream sauce strewn with leafy greens and lots of Parmesan. The starch from the beans thickens the sauce, and the whole skillet takes about 10 minutes on the stovetop. Serve it as a hearty side dish, a meatless main, or alongside chicken, sausage or shrimp.

Humble cannellini beans carry this dish. They’re plush and starchy, mild enough to soak up the flavor of garlic, rosemary and Parmesan, and sturdy enough to hold their shape through a quick simmer. I cook white beans from scratch for recipes like creamy Tuscan white bean soup, or toss them into a simple salad, but this skillet is made for the cans stashed in the pantry. I can’t imagine living without those beans.
Ingredients for creamy white beans, and what each one does

- White beans: Cannellini are satisfyingly creamy-textured and starchy. They make a filling dish, and they’re my favorite type of white bean to use in this recipe. Other white beans work too: Great Northern, butter or navy beans, or larger ones like corona or Greek gigante.
- Garlic: Nothing flatters white beans like garlic, in my opinion. Grating fresh garlic cloves (or pushing them through a garlic press) quickly infuses a punchy taste straight into the beans and sauce.
- Herbs: I like to use aromatic Mediterranean herbs like rosemary and thyme. The simmering white beans quickly absorb the herb oils and the flavor is outstanding. I like to use fresh chopped herbs, but dried herbs will also work — just use about half the amount because they are more potent.
- Cream: Heavy cream enhances the naturally creamy texture of white beans (especially cannellini beans). To make this a vegan meal, you can use full-fat coconut milk or a plant-based cream substitute you enjoy.
Make creamy skillet white beans in 15 minutes

1. Soften the shallots in olive oil over medium-high heat for 2 to 3 minutes, until they turn translucent and tender but haven’t taken on any color. You want their sweetness, not a toasty edge. 
2. Add the beans, garlic, rosemary, salt and chili. The hot oil wakes up the rosemary and chili — a minute or two is enough for the garlic to turn fragrant. Any longer and it browns and turns bitter.

3. Pour in the broth and cream, bring it to a simmer, then lower the heat slightly. Over 10 minutes, some of the beans soften and collapse into the liquid, and their starch thickens the sauce. 
4. Lower the heat and lay the torn greens on top of the beans. Kale needs a couple of minutes to soften and spinach needs only seconds, so let the heat of the beans start the wilting before you stir.

5. Stir until the greens turn bright green and just begin to wilt, then take the pan off the heat. They keep cooking in the hot beans, and pushed past this point, they may become less vibrantly green (but still tasty). 
6. With the pan away from the heat, sprinkle in the Parmesan and stir. Off the burner, the cheese melts into the sauce instead of clumping.
Serving and flavor-pairing ideas
White beans are a neutral canvas and go best with bold seasonings and spices. Try them with sweet roasted tomatoes, spooned on top of toasted sourdough as a rustic crostini, or simply spooned over cooked pasta for the ultimate carb fest.

Creamy Skillet White Beans with Greens and Parmesan
Ingredients
- 2 tablespoons extra virgin olive oil
- ¼ cup sliced shallot or yellow onion
- 2 15-ounce cans cannellini beans, drained (or 3 cups cooked beans)
- 2 grated or finely chopped garlic cloves
- 1 tablespoon chopped fresh rosemary, thyme or oregano, or 1 teaspoon dried
- 1 teaspoon kosher salt
- ½ teaspoon crushed red pepper
- ¼ cup chicken broth, or vegetable broth
- ¼ cup heavy cream, or creme fraiche
- 3 cups torn leafy greens, such as kale or spinach
- ⅓ cup grated Parmesan cheese
Instructions
- Put 2 tablespoons extra virgin olive oil and ¼ cup sliced shallot or yellow onion in a 10-12-inch skillet set over medium-high heat. Cook and stir 2-3 minutes, until they're softened.
- Add 2 15-ounce cans cannellini beans, 2 grated or finely chopped garlic cloves, 1 tablespoon chopped fresh rosemary, 1 teaspoon kosher salt½ teaspoon crushed red pepper to the pan and give the mixture a stir. Cook for a minute or two, until the garlic smells fragrant (but don't brown it).
- Pour in ¼ cup chicken broth and ¼ cup heavy cream. Bring to a simmer, then lower the heat slightly and cook about 10 minutes, stirring once or twice.
- Lower the heat and add 3 cups torn leafy greens to the skillet. Stir them in, and continue cooking until the greens turn bright green and begin to wilt. Remove from the heat. Sprinkle ⅓ cup grated Parmesan cheeseover the beans and stir.
- Serve the beans warm as a main dish, side dish or spooned over pasta.
Notes
- Instead of broth, you can use some of liquid from canned beans to make the sauce.
- The cooked beans keep in the refrigerator in an airtight container up to 4 days. They can also be frozen for up to one month: cool completely, then pack into an airtight container.
Nutrition per serving
Nutrition facts are calculated by third-party software. If you have specific dietary needs, please refer to your favorite calculator.







OMG! This is fabulous! Had with roasted broccoli and crispy tofu. Best supper in ages!
WOW!! I will definitely make this again! I substituted 1/4 cup sour cream, instead of heavy cream and added one extra clove of garlic! Also put my baked chicken on top. It was delicious. Thanks!
This was DEEELICIOUS!!! One question, I’m making it again and am curious….. can I use red kidney beans too? I’m doubling the recipe and only have one can of white.
So happy you loved it! Yes, you can use kidney beans, but they do have a slightly different taste and texture.
I added precooked chicken cut up. It was very delicious.
Excellent recipe! So good w/fish.
Great recipe, very tasty
This was really great and easy to make. I had a can of bean and my rice cooker. So I wanted something easy, this hit the mark! Luckily I also had some kale in the fridge which worked great
Absolutely delicious! Thank you for this simple but divine dish. I used almond milk instead of cream (didn’t want to buy a whole carton for one recipe) and it was perfect.
Glad to know that almond milk worked well for you!
I used evaporated milk instead of cream and it worked very well. So easy to make and so yummy! I will make this often.
After his doctor told my housemate that he needed to lose a lot of weight and get his A1C under control, I’ve been introducing a lot of vegan and vegetarian dishes into our meal rotation. He LOVES this one as a main dish! (And his doctor is very happy with the results so far.)
Kitty, that makes me so happy to hear — I love that the beans are part of your housemate’s new regimen, and even better that he enjoys it so much!
low-key best dish in my rotation of meals now! Thanks so much!! So incredibly tasty , savory perfection.
Jan, that makes me so happy to hear! I love knowing this recipe made it into your regular rotation. Thank you for sharing!
Tried it with silken tofu “cream” and it was super good! Everybody wanted seconds — you must make this.
Hi!
I love this recipe, have made it many times and it’s the only way my partner will enjoy eating kale!
I am wondering if anyone has used greek yogurt instead of the cream?
Gina, I’m so glad this recipe has become a go-to for you! If you’d prefer to use Greek yogurt instead of cream for the sauce, I suggest stirring it in at the end, off the heat, to avoid curdling.
I have made this 3 times in 4 days. Amazing! This last time, I used butter beans because I ran out of cannellini beans and it was just as good. This will be on a regular rotation.
I’d love to try this recipe, but as a vegan, what can I substitute for the cream?
Daureen, I suggest using full fat coconut milk – the 365 brand from Whole Foods is very creamy and not overwhelmingly coconutty in flavor.
Wow! This was fantastic. I absolutely loved this recipe!
My family served this on pan-toasted Italian bread drizzled with olive oil and garlic. Delicious recipe.
Turned out great! Super tasty.
Yummy!
The upper section (where the pictures are) says to cook for 10min after adding beans, but the steps further down say to cook for 5min. 5min is not nearly long enough! I always skip down to the recipe, and in this case I thought 5min sounded like too little time, and sure enough the beans were still hard after 5min. When I read the whole page I discovered the discrepancy. =(
Thanks for letting me know! There was a discrepancy between the text in the how-to photos and in the recipe — the beans are best if cooked for more that 5 minutes. I just updated the recipe. It sounds like you taste-tested and adjusted the time.