I made this soup on a Tuesday in January when it was gray outside and I had half a bag of spinach that needed to be used up. I had artichoke hearts sitting in the back of the pantry — the canned kind I always keep around — and I thought, why not. Forty minutes later I had a pot of something so creamy and satisfying that my husband asked if I'd made it from scratch or ordered something. I'd made it from scratch, obviously, but I understood why he asked.
What makes this soup work is the combination of cream cheese and Parmesan together. I've made creamy soups that go flat after a few minutes — they taste fine right off the stove but somehow lose that richness once you sit down to eat. The cream cheese here acts almost like an anchor. It keeps the soup thick and velvety even as it cools slightly in the bowl. The lemon juice at the end is non-negotiable — it lifts everything and keeps the soup from feeling heavy.
This is the kind of soup I make when I want something that feels like proper comfort food but doesn't take all evening. It's also the soup I've started adding to my cold-weather dinner rotation alongside things like my easy weeknight dinner ideas — because honestly, a bowl of this with some crusty bread is a complete meal. My husband had two bowls the first time I made it, which is usually a good sign.
One thing I'll say upfront: if you're using an immersion blender for this, keep the heat off before you blend. I learned this the slightly messy way. Also, let your cream cheese sit out for 15 minutes before adding it — cold cream cheese goes in as lumps and takes forever to melt properly. Small things, but they matter.

Why You'll Love This Recipe
- It comes together in 40 minutes: I can start this soup after school pickup and have it on the table before anyone starts complaining about being hungry. The whole process is basically sauté, simmer, blend, stir in the cream — that's it. There's no complicated technique involved, which means even on a day when my brain is half-checked-out, this soup gets made correctly.
- The texture is genuinely velvety: Not watery, not gluey — properly smooth and thick in a way that feels substantial. The combination of heavy cream, cream cheese, and Parmesan gives it a richness that holds together. I've had creamy soups that separate or go grainy when they cool — this one doesn't do that.
- It's vegetarian without feeling like it's missing something: I say this as someone who grew up eating meat at every meal. The artichokes have enough of their own savory, slightly tangy flavor that the soup doesn't feel like it needs chicken or anything else. It stands completely on its own.
- Leftovers are even better the next day: I always make a double batch now because a single pot disappears too fast. The flavors deepen overnight in the fridge, and reheating it on the stovetop over low heat takes about five minutes. It's genuinely one of the better lunch-from-leftovers situations I've found.
- Simple pantry ingredients: Canned artichoke hearts, a bag of fresh spinach, cream cheese, Parmesan — everything here is findable at a regular grocery store. I've made this with Walmart's store-brand artichoke hearts and Aldi's heavy cream and it came out exactly the same as when I used the nicer versions. The recipe carries itself regardless.
Ingredients
- 2 tablespoons olive oil or butter
- 1 small yellow onion, finely diced
- 3 garlic cloves, minced
- ¼ teaspoon red pepper flakes (optional)
- 1 can (14 oz) artichoke hearts, drained and chopped
- 4 cups fresh spinach, roughly chopped
- 4 cups vegetable broth (or chicken broth if you're not keeping it vegetarian)
- 1 cup heavy cream (or half-and-half for a lighter version)
- ½ cup cream cheese, softened
- ½ cup grated Parmesan cheese
- 1 tablespoon lemon juice
- Salt and black pepper, to taste
Directions
- Sauté the aromatics: Heat the olive oil in a large, heavy pot over medium heat. Add the onion and cook for about 5 minutes until it's soft and starting to turn translucent — don't rush this part. Stir in the garlic and red pepper flakes and cook for another minute. The whole kitchen should smell good at this point.
- Add the artichokes and spinach: Add the chopped artichoke hearts to the pot and stir them around for 3 minutes so they pick up a bit of color and flavor from the oil. Then add the spinach and stir until it's wilted down — it collapses fast, usually in under 2 minutes.
- Pour in the broth and simmer: Add the vegetable broth and bring everything to a gentle boil. Reduce the heat and let it simmer for 10 minutes. This is when the flavors actually start talking to each other — don't skip the simmer time.
- Blend to your liking: Turn off the heat. Use an immersion blender to blend the soup directly in the pot — I go mostly smooth but leave a little texture so it doesn't feel like baby food. If you don't have an immersion blender, transfer the soup in batches to a regular blender, leave the lid slightly ajar, and blend carefully. A regular blender works fine — I used one for years before I bought an immersion blender for about $20.
- Stir in the cream and cheeses: Turn the heat back to low. Add the heavy cream, softened cream cheese, and Parmesan. Stir slowly until the cream cheese fully melts and the soup looks uniform and glossy — this takes about 3 minutes. Don't let it boil once the cream goes in.
- Season and finish: Add the lemon juice, then taste and adjust with salt and black pepper. Simmer gently for another 5 minutes. Taste again before serving — the lemon really does make a difference.

Tips for Success
- Let the cream cheese soften first: I pull mine out of the fridge about 15 minutes before I start cooking. Cold cream cheese goes in as stubborn chunks and takes three times as long to melt — you end up stirring forever and the soup loses heat. Room temperature cream cheese melts into the soup in under a minute. Worth the small bit of planning ahead.
- Turn off the heat before blending: Hot soup in a blender with a fully sealed lid is how you burn yourself and redecorate your ceiling. Turn the heat off, let it sit for 2 minutes, and if you're using a countertop blender, hold a folded kitchen towel over the lid while you blend. I learned this the slightly embarrassing way early on.
- Taste before salting: The Parmesan adds a meaningful amount of salt to this soup — more than you'd expect. I always add the Parmesan first, let it melt in, and then taste before I reach for the salt shaker. Twice I've over-salted this soup before I figured that out.
- Keep the heat low after the cream goes in: Once you add the heavy cream, you're on low heat only. Boiling the cream can cause it to separate and the soup goes from silky to slightly grainy. It doesn't take long to heat through — just keep it gentle and patient.
- Don't skip the lemon juice: I almost didn't add it the first time I made this, thinking it was optional. It's not — the acid cuts through the richness and makes everything taste brighter. A single tablespoon is enough. Without it, the soup can taste slightly flat even when it's seasoned properly.
Variations
- Add white beans for extra body: Stir in a drained can of cannellini beans before blending and blend them right into the soup. They add protein, make the soup thicker without extra cream, and you'd never know they were there. This is the version I make when I want something that eats more like a meal and less like a starter.
- Make it vegan: Swap the heavy cream for full-fat coconut cream (the kind in a can, not coconut milk), use a vegan cream cheese, and skip the Parmesan or use nutritional yeast instead. The coconut cream adds a subtle sweetness that actually works well with the artichokes. It's a different soup but still a good one.
- Add shredded chicken: If you have leftover rotisserie chicken, stir it in after blending. Don't blend it — you want it in chunks throughout the soup. This is how I'd serve it to my husband when he wants something more substantial. He usually adds extra red pepper flakes on top too.
- Use kale instead of spinach: Kale holds its texture a bit better through the blending process and gives the soup a slightly earthier flavor. I'd suggest removing the tough stems first and chopping it fairly small so it wilts evenly. The color ends up a deeper green, which I actually like.
- Add a splash of white wine: Pour about ¼ cup of dry white wine into the pot after the garlic, before the broth, and let it cook down for a minute. It adds a layer of depth to the base that's subtle but noticeable. I don't do this every time, but when I have wine open in the kitchen it always goes in.
Serving and Storage
Serving
I serve this hot, ladled into deep bowls with a little extra Parmesan grated on top and sometimes a drizzle of olive oil. Toasted sourdough is the best thing alongside it — something with a crust you can actually drag through the soup. A grilled cheese sandwich also works, which is what Zainab prefers. If you're serving it as a starter before something like baked cranberry turkey sliders, keep the portions smaller — it's rich enough that a small bowl goes a long way.
Storage
Store leftover soup in an airtight container in the fridge for up to 4 days. Reheat on the stovetop over low heat, stirring occasionally — it'll thicken slightly in the fridge so you can add a splash of broth to loosen it back up. If you want to freeze it, it's possible, but dairy soups can separate when thawed. If you do freeze it, thaw overnight in the fridge and reheat slowly while stirring — it usually comes back together fine.

Frequently Asked Questions
Can I use frozen spinach instead of fresh?
Yes, frozen spinach works here. Thaw it completely first and then squeeze out as much water as you can — I usually wrap it in a clean kitchen towel and wring it out. If you skip the squeezing step, the extra water dilutes the soup and throws off the consistency. About 10 oz of frozen spinach is roughly equivalent to 4 cups of fresh.
Can I make this soup ahead of time?
Absolutely — this is actually one of those soups that tastes better the next day. I make it the night before when I know the following day is going to be busy. Store it in the fridge and reheat gently on the stovetop over low heat. Add a splash of broth if it's thickened too much overnight.
How do I make this dairy-free?
Use full-fat coconut cream in place of the heavy cream, a dairy-free cream cheese (Violife or Kite Hill both work), and skip the Parmesan or use nutritional yeast for that savory depth. The soup will still be creamy and flavorful — just a slightly different flavor profile from the coconut cream. Make sure your broth is dairy-free as well.
Is this soup gluten-free?
Yes, all the ingredients in this recipe are naturally gluten-free. Just double-check the labels on your vegetable broth and cream cheese, since some brands include additives that contain gluten. Everything else — spinach, artichoke hearts, cream, Parmesan — is fine as-is.
What can I serve with this soup to make it a full meal?
Toasted sourdough or garlic bread are the obvious choices and they're obvious for good reason. A simple green salad on the side balances out the richness. If you're feeding people who want something heartier, stir in some shredded chicken or white beans before serving — it turns the soup from a starter into a proper main without much extra effort.

CREAMY SPINACH ARTICHOKE SOUP
Ingredients
- 2 tablespoons butter or olive oil
- 1 small onion diced
- 2 cloves garlic minced
- 1 can 14 oz artichoke hearts, drained and chopped
- 4 cups fresh spinach chopped
- 3 cups vegetable or chicken broth
- 1 cup heavy cream or half-and-half
- ½ teaspoon salt
- ¼ teaspoon black pepper
- ¼ teaspoon crushed red pepper flakes optional
- ½ cup grated Parmesan cheese optional
Instructions
- Sauté Aromatics: In a large pot, heat butter or olive oil over medium heat. Add onion and garlic and sauté until translucent, 3–4 minutes.
- Add Vegetables: Stir in chopped artichokes and spinach. Cook for 2–3 minutes until spinach wilts slightly.
- Simmer: Pour in broth, season with salt, pepper, and red pepper flakes. Simmer 10 minutes to blend flavors.
- Blend Soup: Use an immersion blender to puree until smooth, or transfer in batches to a blender.
- Add Cream: Stir in heavy cream and Parmesan, heat through without boiling.
- Serve: Garnish with extra Parmesan or fresh herbs if desired. Serve warm.
Notes
- Make Ahead: Soup can be made a day in advance; reheat gently on the stove.
- Flavor Variations: Add roasted garlic or sautéed mushrooms for extra depth.
- Serving Suggestions: Serve with crusty bread or a light salad for a complete meal.
- Storage Tips: Store in an airtight container in the refrigerator for up to 3 days; freeze for up to 1 month.
This soup has genuinely become one of my most-made recipes over the past year. I go back to it whenever I need something that takes almost no effort but delivers in a way that makes people think you spent more time than you did. The artichokes do something interesting in a soup context — they're earthy and slightly tangy in a way that you can't quite put your finger on, and that's what makes this different from a basic cream of spinach situation.
I've served it as a starter before a bigger meal and I've served it as the whole meal with bread. Both work. When the weather turns cold and I want something warming that I can make on a weeknight without too much planning, this is the recipe I come back to. It's also one of those things that's good enough to serve to guests without any stress — which, for me, matters a lot.
If you're in a soup phase right now, you might also want something sweet to end the meal — my banana bread cookies are Zainab's current obsession and they come together almost as fast as this soup does. A bowl of this and a couple of those cookies and everyone at my table is happy. 🥣✨
If you liked this recipe, here are a few more from my kitchen you might want to try:
- 29 Easy Spring Dinner Recipes — good bookmark to have when you're out of weeknight ideas
- Baked Cranberry Turkey Sliders — great alongside this soup as a fuller meal
- Banana Bread Cookies — soft, simple, and Zainab's current favorite thing I make
- Mini Cinnamon Roll Cheesecakes — when you want something a little more impressive for dessert
- Bacon-Wrapped Jalapeño Poppers — if you want a starter with a bit of heat before this soup





Comments
No Comments