Quick Recipe Version (TL;DR)
Quick Ingredients
- 2 lb boneless pork shoulder, trimmed and cut into 3/4-inch cubes
- 1.5 lb Yukon Gold potatoes, peeled and 3/4-inch diced
- 1 large yellow onion, diced
- 2 carrots, diced
- 2 celery ribs, diced
- 4 garlic cloves, minced
- 2 tbsp olive oil
- 6 cups low-sodium chicken broth + 1 cup water
- 1 tbsp fresh thyme leaves (or 1 tsp dried)
- 2 bay leaves
- 2 tsp kosher salt, divided; 1 tsp black pepper, divided
- 1/2 tsp smoked paprika (optional)
- 1 tbsp apple cider vinegar; 2 tbsp chopped parsley
Do This
- 1. Pat pork dry; season with 1 1/4 tsp salt and 1/2 tsp pepper.
- 2. Brown pork in 2 tbsp oil over medium-high in two batches, 6–8 minutes total; set aside.
- 3. Sauté onion, carrot, celery with a pinch of salt, 5 minutes; add garlic, thyme, paprika 30 seconds.
- 4. Return pork; add broth, water, bay leaves. Bring to a boil, then simmer gently at about 190–200°F, 45 minutes.
- 5. Stir in potatoes; simmer until just tender, 18–22 minutes.
- 6. Fish out bay leaves; stir in vinegar and parsley. Season with remaining salt and pepper to taste.
- 7. Rest 5 minutes, skim any fat, serve hot.
Why You’ll Love This Recipe
- Hearty and comforting: tender pork, creamy potatoes, and a savory farmhouse broth.
- Weeknight-friendly: straightforward steps with mostly pantry staples.
- Balanced flavor: thyme and a splash of apple cider vinegar brighten every spoonful.
- Great leftovers: flavors deepen beautifully by day two.
Grocery List
- Produce: Yukon Gold potatoes, yellow onion, carrots, celery, garlic, fresh thyme, fresh parsley
- Dairy: None required (optional: 1 tbsp unsalted butter for extra richness)
- Pantry: Olive oil, low-sodium chicken broth, bay leaves, smoked paprika (optional), apple cider vinegar, kosher salt, black pepper
Full Ingredients
Pork and Broth
- 2 lb boneless pork shoulder (Boston butt), trimmed and cut into 3/4-inch cubes
- 6 cups low-sodium chicken broth
- 1 cup water
- 2 bay leaves
Vegetables and Aromatics
- 1.5 lb Yukon Gold potatoes, peeled and cut into 3/4-inch dice
- 1 large yellow onion, diced (about 1 1/2 cups)
- 2 medium carrots, diced (about 1 cup)
- 2 celery ribs, diced (about 1 cup)
- 4 garlic cloves, minced
- 1 tbsp fresh thyme leaves (or 1 tsp dried thyme)
Seasoning and Finish
- 2 tbsp olive oil
- 2 tsp kosher salt, divided (start with 1 1/4 tsp; adjust to taste)
- 1 tsp freshly ground black pepper, divided
- 1/2 tsp smoked paprika (optional, for gentle warmth)
- 1 tbsp apple cider vinegar
- 2 tbsp fresh parsley, chopped

Step-by-Step Instructions
Step 1: Prep and season the pork
Pat the pork cubes dry with paper towels so they brown well. Season evenly with 1 1/4 teaspoons kosher salt and 1/2 teaspoon black pepper. Dice the onion, carrots, and celery; mince the garlic; peel and cube the potatoes. Keep potatoes submerged in cold water to prevent browning until needed.
Step 2: Brown the pork
Heat 2 tablespoons olive oil in a heavy 5- to 6-quart pot or Dutch oven over medium-high heat until shimmering. Add half the pork in a single layer and brown on two sides, about 3–4 minutes total; transfer to a bowl. Repeat with remaining pork. Browning builds deep flavor in the broth, so aim for golden edges rather than steaming.
Step 3: Build the aromatic base
Reduce heat to medium. Add the onion, carrot, and celery with a small pinch of salt. Cook, stirring, until the onion turns translucent and the edges of the vegetables soften, 5–6 minutes. Stir in the garlic, thyme, and smoked paprika (if using) and cook 30 seconds, just until fragrant. If the bottom of the pot is dark, splash in 1/4 cup of the broth and scrape up the browned bits.
Step 4: Simmer the pork until tender
Return the browned pork and any juices to the pot. Add the remaining broth, the 1 cup water, and bay leaves. Bring to a boil over medium-high heat, then immediately reduce to a gentle simmer, about 190–200°F. Partially cover and cook for 45 minutes, adjusting the heat to maintain a quiet simmer. The pork should be approaching fork-tender.
Step 5: Add potatoes and cook through
Drain the potatoes and add them to the pot. Continue simmering, partially covered, until the potatoes are just tender and the pork is fully tender, 18–22 minutes. Avoid a rolling boil to keep the broth clear and the potatoes from breaking down.
Step 6: Finish and season to taste
Fish out and discard the bay leaves. Stir in the apple cider vinegar and parsley. Taste and season with the remaining salt and pepper as needed. If you prefer a slightly thicker broth, lightly mash 4–6 potato cubes against the side of the pot and stir them back in.
Step 7: Rest, skim, and serve
Let the soup rest off heat for 5 minutes; skim any excess fat from the surface. Serve hot (soup should be at least 165°F) with crusty bread. A final grind of pepper and a few fresh thyme leaves make a lovely garnish.
Pro Tips
- Dry meat browns better: moisture is the enemy of searing, so pat the pork thoroughly.
- Keep the simmer gentle (about 190–200°F): a hard boil can toughen meat and cloud the broth.
- Yukon Golds hold their shape: they stay creamy without falling apart like a russet might.
- Brighten at the end: the tablespoon of cider vinegar wakes up the rich flavors without tasting sour.
- Make it richer: stir in 1 tablespoon unsalted butter off heat for a glossy finish.
Variations
- Smoky bacon-thyme: render 4 ounces diced bacon first; use the drippings to brown the pork. Reduce added salt slightly.
- Greens and barley: add 1/3 cup pearled barley in Step 4 (simmer 55 minutes), and stir in 3 cups chopped kale with the potatoes.
- Creamy farmhouse: stir in 1/3 cup heavy cream at the end and add an extra 1/2 tablespoon vinegar to balance.
Storage & Make-Ahead
Refrigerate cooled soup in airtight containers for up to 4 days. Reheat gently on the stovetop until piping hot (165°F). Freezer-friendly for up to 3 months; for best texture, slightly undercook the potatoes if you plan to freeze, or add freshly cooked potatoes after thawing. Make-ahead tip: cook Steps 1–4 a day early; chill, then finish with potatoes and parsley just before serving.
Nutrition (per serving)
Approximate: 520 calories; 28 g protein; 28 g fat; 35 g carbohydrates; 4 g fiber; 860 mg sodium. Values will vary based on broth and trimming.
