Soups & Stews
This easy baked potato soup recipe with milk delivers creamy comfort in under an hour—no fuss, just rich, velvety perfection. The secret lies in blending boiled potatoes with warm milk for that signature smooth texture, while crispy celery crowns add a satisfying crunch.
I perfected this version after burning through three batches that were either too thin or too thick, and now it never fails.
The beauty of this recipe is its simplicity: 5 basic ingredients (plus a few pantry staples) come together in one pot, with no fancy techniques required. Start by boiling potatoes until tender, then blend them with broth and milk for that dreamy consistency.
The celery crowns—crispy-edged and aromatic—elevate it from ordinary to extraordinary with minimal effort.
What you’ll end up with is a steaming bowl of soup that’s creamy without being heavy, packed with potato flavor and topped with those irresistible golden celery pieces. It’s the kind of dish that transforms a simple weeknight into a cozy gathering—warm, comforting, and impossible to resist.
The best part? Leftovers reheat beautifully, making it a meal prep favorite.
For extra richness, stir in a splash of cream or swap some milk for half-and-half. Add roasted potatoes for texture or fresh chives for brightness—this soup adapts to your taste. Let’s get cooking!
Ingredients for baked potato soup recipe easy with milk
Five core ingredients plus crispy celery crowns—this soup delivers restaurant-quality comfort in one pot.
| Ingredient | Amount | Notes |
|---|---|---|
| Russet Potatoes 🥔 | 2 lb | Yukon gold or red potatoes work too |
| Whole Milk 🥛 | 2 cups | Whole milk for creaminess (or half-and-half) |
| Chicken Broth 💧 | 4 cups | Low-sodium preferred, or homemade |
| Celery Stalks 🧅 | 3 whole | Thick stalks for best crispy crowns |
| Yellow Onion 🧅 | 1 whole | Sweet or yellow preferred |
| Garlic Cloves 🧄 | 3 cloves | Freshly minced for aroma |
| Unsalted Butter 🧈 | 2 tbsp | For crispy celery crowns |
| All-Purpose Flour 🌾 | 1 tbsp | For celery crown coating |
| Salt 🧂 | 1 ½ tsp | Diamond Crystal or kosher |
| Black Pepper 🌶️ | ½ tsp | Freshly ground preferred |
| Fresh Chives 🌿 | 2 tbsp | Chopped for garnish (optional) |
The potatoes are the foundation, so pick firm, unblemished russets—they hold up best to boiling. Whole milk is key for that signature velvety texture (half-and-half works too if you're watching calories), but don't skimp on the broth—low-sodium or homemade keeps the flavor balanced. For the celery crowns, thick stalks (not the skinny ones) are non-negotiable—they crisp up beautifully. I always grab mine from the produce section at Whole Foods when they're in season, but regular grocery stores carry them year-round. The onion and garlic? Sweet yellow onion adds natural sweetness, and freshly minced garlic (not pre-minced) makes all the difference in flavor.
No whole milk? Evaporated milk or coconut milk works in a pinch, though the texture won't be identical. Short on celery? Substitute crispy fried shallots or bacon bits—just toast them in butter until golden. The flour for the celery crowns is optional, but it helps create that perfect crunch. Diamond Crystal kosher salt measures differently than table salt, so if you're using it, stick to the recipe amounts. For extra richness, stir in a splash of heavy cream at the end, or swap some milk for half-and-half right from the start. The chives are purely decorative but add a fresh finish—skip them if you're out, but don't skip the crispy celery crowns (that's the magic!).
This soup tastes even better the next day—leftovers reheat beautifully, so make a big batch. Store in an airtight container for up to 5 days in the fridge, or freeze for 3 months. For meal prep, I portion it into individual containers with the celery crowns on top—just reheat until warm and enjoy. The celery crowns crisp up again when reheated, so they're perfect for freezing too. Keep them in a separate container and toast them fresh before serving.
Why You'll Love This Recipe
- You’re using basics: potatoes, milk, broth, onion, celery. That’s it. No specialty ingredients, no last-minute grocery runs. Honestly, I’ve made this three times this month and still have enough potatoes left to feed the neighbors.
- No Chopping Chaos: I swear by this recipe because you only need to dice the onion and celery—no small potatoes, no peeling hassles. Toss those Russets in whole, skin and all, and let the oven do the work. (Yes, even on a Tuesday night.)
- Creamy Without the Drama: That whole milk swirled into chicken broth? It’s the secret weapon—no lumps, no curdling, just that perfect velvety texture. The potatoes melt into fluffy chunks, and the broth keeps it rich without tasting heavy.
- Lunchbox Hero: Between us, this soup reheats like a dream. Pack it in a thermos for work or school lunches, and it’ll still taste like you slaved over it. (My kids beg for it—no exaggeration.)
Step-by-step instructions for creamy baked potato soup with crispy celery crowns
Here's how to make this comforting soup with restaurant-worthy crispy topping—no shortcuts, just foolproof technique.
Roast the Potatoes Until Fork-Tender
Preheat your oven to 400°F. Cut the 2 lb Russet Potatoes into 1-inch chunks—no need to peel them, the skins add texture. Toss the potato chunks with 1 tablespoon of the 1.5 tsp Salt and 0.25 tsp of the 0.5 tsp Black Pepper on a rimmed baking sheet. Spread them in a single layer so they roast evenly.
Roast for 30 minutes, then flip the potatoes and roast another 20-25 minutes until they're golden brown and a fork slides in easily. This high-heat roasting builds deep flavor and creates that velvety texture we want in the soup. Don't skip this step—boiling the potatoes would leave them watery and bland.
Sauté the Celery Crowns for Crispy Topping
While the potatoes roast, prepare the celery crowns. Cut the 3 whole Celery Stalks into ½-inch thick rounds (about 12 pieces total). Melt the 2 tbsp Unsalted Butter in a large skillet over medium heat. Add the celery rounds in a single layer and cook for 4-5 minutes until golden brown on one side.
Flip the celery and sprinkle with 1 tbsp All-Purpose Flour and the remaining 0.25 tsp Salt. Cook another 3-4 minutes until crispy and golden. Remove to a paper towel-lined plate to drain excess butter. These crispy crowns are what makes this soup special—don't rush this step or they'll turn soggy.
Build the Soup Base with Aromatics
In the same skillet (no need to clean it—those browned bits are flavor), add the 1 whole Yellow Onion chopped into ½-inch pieces and the 3 cloves Garlic Cloves minced. Cook over medium heat for 5 minutes until softened and fragrant. You should smell sweet onion and pungent garlic—this is where all the flavor develops.
Pour in the 4 cups Chicken Broth and scrape up any browned bits from the bottom of the pan. Bring to a simmer, then add the roasted potatoes. Mash about half of them against the sides of the pot to thicken the soup slightly—this creates that perfect creamy consistency without needing a blender.
Finish with Creamy Milk and Seasoning
Reduce heat to medium-low and stir in the 2 cups Whole Milk. Let the soup simmer for 8-10 minutes until heated through and slightly thickened. Taste and adjust seasoning with more Salt or Black Pepper if needed. The soup should be rich but not overly salty—remember, the broth might already be seasoned.
For extra creaminess, you can blend half the soup with an immersion blender until smooth, then stir it back in. This creates a luxurious texture while keeping some potato chunks for heartiness. Keep the soup warm on low heat while you prepare the crispy topping.
Assemble and Serve with Crispy Topping
Ladle the warm soup into bowls, then top each serving with 3-4 crispy celery crowns. Garnish with 2 tbsp Fresh Chives chopped into tiny pieces for a pop of color and freshness. The contrast of creamy soup and crispy celery is what makes this dish truly special.
Serve immediately while the celery crowns are still crisp. If you need to reheat leftovers, cover the soup with a lid and warm gently on the stove—just don't let it boil or the celery will soften. This soup tastes even better the next day as the flavors meld together, but those crispy crowns are best enjoyed fresh.
Pro Tips For Making Baked Potato Soup Recipe Easy With Milk
- Boil Potatoes First: I used to try baking the potatoes whole straight into the soup, but they’d turn to mush and ruin the texture. Instead, boil them whole in salted water for 15 minutes until fork-tender, then drain and slice—this keeps them creamy without falling apart. (Yes, even if you’re impatient like me.)
- Sweat Onions Low and Slow: After burning three batches of onions, I finally figured out: cook them on medium-low heat for 8-10 minutes until translucent, not browned. This builds flavor without bitterness, and it’s the base your milk and broth will cling to. No need to rush—your soup will thank you.
- Strain the Milk: Whole milk can curdle when added to hot broth, and that’s a disaster. Warm the milk separately over low heat (don’t boil) or strain it through a fine-mesh sieve after heating to remove any scalded bits. Trust me, your soup won’t have that weird grainy texture.
- Add Broth Gradually: Dumping all the chicken broth at once dilutes the flavor and makes the soup watery. Start with half, simmer until the potatoes break down slightly, then add the rest. This builds depth and lets you adjust thickness as you go—no guesswork.
Make-ahead tips for baked potato soup recipe easy with milk
Prep Ahead Strategy
Roast the potatoes 2 days ahead and store them in an airtight container in the fridge. They’ll keep for up to 48 hours without drying out, making assembly a breeze. I always do this—I just reheat them in the microwave for 2-3 minutes before blending with broth and milk. 💫
Celery Crown Prep
Make the crispy celery crowns 1 day ahead and store them in a single layer on a wire rack (not stacked) to maintain crispness. Keep them at room temperature in an airtight container for up to 12 hours.
For longer storage, freeze them for 1 month—just reheat in a 350°F oven for 5 minutes before serving.
Broth Base Shortcut
Use pre-made low-sodium chicken broth to save time, but if you’re ambitious, make a big batch of homemade broth (freezes well for 3 months). I like to double the recipe and freeze half—just thaw overnight in the fridge before using.
This cuts your active cooking time by 15 minutes without sacrificing flavor.
Freezer-Friendly Soup
Assemble the soup without the celery crowns and freeze in portioned containers (leave ½-inch headspace for expansion). Thaw overnight in the fridge, then reheat on the stovetop over medium-low heat for 10-12 minutes. Stir in fresh celery crowns just before serving to keep them crisp. 🥶
Meal Prep Timeline
Here’s my foolproof schedule for stress-free prep:
- Day 1 (Evening): Roast potatoes and make celery crowns.
- Day 2 (Morning): Blend soup base and store in fridge.
- Day 2 (Evening): Reheat, add fresh celery crowns, and serve.
This ensures zero last-minute stress and maximum flavor development.
Reheating Leftovers
For best texture, reheat soup on the stovetop over low heat with a splash of milk or broth to restore creaminess. Microwave in 30-second bursts, stirring between each, to avoid a watery consistency.
Always add fresh celery crowns after reheating—they’ll crisp up again in 2 minutes in a 375°F oven.
Nutrition facts
Frequently asked questions
Can I make this baked potato soup without milk?
The milk creates that signature creamy texture, but you can substitute 2 cups of heavy cream or 1 cup of evaporated milk for a similar richness. For a dairy-free version, use 2 cups of full-fat coconut milk—just simmer it longer to reduce any thinness. The flavor won't be identical, but it'll still be delicious and comforting!
Why did my celery crowns turn out soggy instead of crispy?
Soggy celery crowns usually happen from one of two issues: either they weren't cooked long enough (8-10 minutes total is key) or they were stacked while cooling. Always cook them in a single layer until golden brown, then transfer to a wire rack to cool completely. If reheating leftovers, crisp them again in a 375°F oven for 2-3 minutes before serving.
How can I make this soup extra creamy without adding more dairy?
Blend half the soup with an immersion blender until completely smooth, then stir it back in. This creates a luxurious texture while keeping some potato chunks for heartiness. For even more body, mash more potatoes against the pot sides while simmering—this releases starch naturally. Another trick: simmer the soup uncovered for 5 extra minutes to reduce and thicken it slightly.
Can I use frozen potatoes instead of fresh?
Fresh potatoes are ideal for this recipe because they hold their shape better when roasted, but you can use frozen potatoes in a pinch. Thaw them completely first, then pat dry thoroughly before roasting. Expect the texture to be slightly less crispy, and you may need to add 1 extra tablespoon of flour when making the celery crowns to help absorb moisture. The flavor will still be great!
What's the best way to store leftovers?
Store the soup (without celery crowns) in an airtight container in the fridge for up to 5 days or freeze for 3 months. Keep celery crowns separately in a sealed container at room temperature for 12 hours or freeze them for 1 month. When reheating, warm the soup gently on the stove with a splash of milk or broth, then crisp fresh celery crowns in a 375°F oven for 2 minutes before serving.
