Quick Recipe Version (TL;DR)
Quick Ingredients
- 2 tbsp unsalted butter
- 1 tbsp olive oil
- 1 large yellow onion, diced (about 2 cups)
- 3 celery ribs, diced (about 1 cup)
- 3 garlic cloves, minced
- 2 tbsp all-purpose flour
- 3 cups seafood stock (or fish stock)
- 1 lb Yukon Gold potatoes, peeled and diced (1/2-inch)
- 1 bay leaf
- 1 tsp dried thyme (or 1 tbsp fresh thyme leaves)
- 1 tsp kosher salt, plus more to taste
- 1/2 tsp black pepper, plus more to taste
- 2 cups whole milk, warmed
- 1/2 cup heavy cream
- 1 lb white fish (cod, haddock, or pollock), cut into 1-inch chunks
- 12 oz large shrimp, peeled and deveined
- 2 tbsp chopped fresh parsley
- 1 tbsp chopped fresh chives (optional)
- 1 tbsp fresh lemon juice (optional but recommended)
Do This
- 1) Sauté onion and celery in butter + oil 6–8 minutes; add garlic 30 seconds.
- 2) Stir in flour 1 minute; whisk in stock.
- 3) Add potatoes, bay leaf, thyme, salt, pepper; simmer gently 12–15 minutes until potatoes are tender.
- 4) Lower heat; stir in warm milk and cream and heat to steaming (about 170–180°F), not boiling.
- 5) Add fish; poach gently 3–4 minutes.
- 6) Add shrimp; cook 2–3 minutes until pink and opaque.
- 7) Finish with parsley (and chives/lemon). Taste and adjust seasoning; rest 5 minutes, then serve.
Why You’ll Love This Recipe
- Comforting and hearty: Tender potatoes, sweet shrimp, and flaky fish in a creamy broth.
- Weeknight-friendly: One pot, straightforward steps, and ready in under an hour.
- Rich without being heavy: Milk-based chowder texture with just enough cream for silkiness.
- Flexible: Swap seafood, add corn, or adjust herbs to match what you have.
Grocery List
- Produce: 1 large yellow onion, 3 celery ribs, 3 garlic cloves, 1 lemon (optional), fresh parsley, fresh chives (optional), 1 lb Yukon Gold potatoes
- Dairy: unsalted butter, whole milk, heavy cream
- Seafood: 1 lb white fish (cod/haddock/pollock), 12 oz large shrimp
- Pantry: olive oil, all-purpose flour, seafood stock (or fish stock), bay leaf, dried thyme (or fresh), kosher salt, black pepper
Full Ingredients
Seafood
- White fish: 1 lb cod, haddock, or pollock, skinless, cut into 1-inch chunks
- Shrimp: 12 oz large shrimp (16–20 count), peeled and deveined (tails off for easiest eating)
Vegetables & Herbs
- Yellow onion: 1 large, diced (about 2 cups)
- Celery: 3 ribs, diced (about 1 cup)
- Garlic: 3 cloves, minced
- Yukon Gold potatoes: 1 lb (about 3 medium), peeled and diced into 1/2-inch pieces (about 3 cups)
- Fresh parsley: 2 tbsp, chopped
- Fresh chives (optional): 1 tbsp, chopped
- Lemon juice (optional): 1 tbsp, fresh
Broth, Dairy & Thickener
- Unsalted butter: 2 tbsp
- Olive oil: 1 tbsp
- All-purpose flour: 2 tbsp
- Seafood stock (or fish stock): 3 cups
- Whole milk: 2 cups, warmed to about 120–140°F (warm, not hot)
- Heavy cream: 1/2 cup
Seasonings
- Bay leaf: 1
- Dried thyme: 1 tsp (or 1 tbsp fresh thyme leaves)
- Kosher salt: 1 tsp to start, plus more to taste
- Black pepper: 1/2 tsp to start, plus more to taste

Step-by-Step Instructions
Step 1: Prep the seafood and vegetables
Dice the onion and celery. Mince the garlic. Peel and dice the potatoes into 1/2-inch pieces so they cook evenly.
Cut the fish into 1-inch chunks. Pat the fish and shrimp dry with paper towels (this helps keep the broth clean and prevents excess water from thinning the chowder).
Warm the milk gently (microwave in 30-second bursts or warm in a small saucepan) until it feels warm but not hot, about 120–140°F.
Step 2: Sweat the aromatics
Set a large heavy pot or Dutch oven (at least 5–6 quarts) over medium heat. Add the butter and olive oil.
Once the butter melts, add the diced onion and celery. Cook, stirring occasionally, until softened and lightly translucent, 6–8 minutes. Add the garlic and cook until fragrant, 30 seconds.
Step 3: Build the chowder base with a quick roux
Sprinkle the flour over the vegetables and stir continuously for 1 minute. You’re cooking out the raw flour taste and coating the vegetables.
Slowly whisk in the seafood stock, scraping the bottom of the pot as you go to dissolve any flavorful bits. Bring the mixture up to a gentle simmer over medium-high heat.
Step 4: Simmer the potatoes until tender
Add the diced potatoes, bay leaf, thyme, 1 tsp kosher salt, and 1/2 tsp black pepper. Reduce the heat so the stew holds a gentle simmer (aim for about 185–195°F if you’re using a thermometer; it should bubble occasionally, not boil hard).
Simmer until the potatoes are tender when pierced with a fork, 12–15 minutes, stirring once or twice so nothing sticks.
Step 5: Add the milk and cream gently (no boiling)
Reduce heat to low. Remove and discard the bay leaf.
Stir in the warmed milk and the heavy cream. Heat the chowder until it is steaming and hot but not boiling, about 170–180°F. Keeping the heat gentle helps the dairy stay smooth.
Step 6: Poach the fish until flaky
Add the fish chunks and stir very gently so you don’t break them up too much. Keep the heat on low and poach until the fish turns opaque and flakes easily, 3–4 minutes.
If you like using an instant-read thermometer, aim for about 140°F in the thickest fish pieces.
Step 7: Cook the shrimp, finish with herbs, and rest
Add the shrimp and cook on low until they turn pink and opaque, 2–3 minutes (they should curl into a loose “C” shape, not a tight ring).
Turn off the heat. Stir in the parsley and chives (if using). Add the lemon juice (if using) for a bright finish. Taste and adjust salt and pepper.
Let the chowder rest off the heat for 5 minutes to thicken slightly, then ladle into warm bowls.
Pro Tips
- Keep the dairy from curdling: Warm the milk and keep the pot below a boil once the milk/cream goes in (170–180°F is a great target).
- Cut potatoes evenly: 1/2-inch pieces cook fast and finish at the same time, which keeps the seafood from overcooking.
- Add seafood at the end: Fish and shrimp cook quickly; treating them like a final “poach” keeps them tender.
- Want it thicker? Mash a few potato cubes against the side of the pot and stir them back in, or simmer 2–3 minutes longer before adding seafood.
- Season in layers: Salt lightly early, then adjust at the end after the stock reduces and the seafood is in.
Variations
- Smoky chowder: Add 1/2 tsp smoked paprika with the thyme, and finish with extra black pepper.
- Corn and herb version: Stir in 1 cup corn kernels (fresh or frozen) when you add the milk; add extra parsley and chives at the end.
- Extra-rich “restaurant” style: Replace 1/2 cup of the milk with additional heavy cream (so 1 1/2 cups milk + 1 cup cream). Keep heat very gentle.
Storage & Make-Ahead
Cool leftovers quickly, then refrigerate in an airtight container for up to 2 days. Reheat gently in a saucepan over low heat, stirring often, until hot (aim for 165°F). Avoid boiling, which can toughen shrimp and make the dairy separate.
Make-ahead tip: You can cook the base (through the potato simmer) up to 1 day ahead. Cool and refrigerate. When ready to serve, reheat the base to a gentle simmer, then add warm milk/cream and finish by poaching the fish and shrimp right before eating.
Nutrition (per serving)
Approximate, assuming 6 servings: 420 calories, 26 g protein, 22 g fat, 30 g carbs, 3 g fiber, 850 mg sodium. Values vary by exact seafood and stock used.

Leave a Reply