Skip to main content

Slow-Cooked Pork Shoulder with Braised White Beans

This slow-cooked pork shoulder with braised white beans is the ultimate comforting weekend project. By marinating the pork overnight in aromatic bay and sage, then slowly braising it in dry white wine and vinegar, the meat becomes exceptionally tender and rich in flavour. This high-protein dish replaces heavy starches with creamy, oven-finished cannellini beans, which soak up the savoury juices for a truly satisfying meal.

Perfect for a Sunday lunch or an impressive dinner party, this recipe balances the richness of the pork with the earthy bitterness of mature spinach sautéed with golden garlic. While the process requires a little patience, much of the work is hands-off, allowing the oven to transform simple ingredients into a sophisticated, homemade feast that will delight your guests.

Video picks

Continue reading below

Ingredients for Slow-Cooked Pork Shoulder with Braised White Beans

  • 1 (6-lb.) bone-in pork shoulder (Boston butt), fat cap trimmed to 1/4 inch

  • 3 tablespoons Diamond Crystal or 5 teaspoons Morton kosher salt, plus more

  • 8 fresh bay leaves, divided

  • 1/4 cup sage leaves, plus 4 large sprigs

  • 4 tablespoons olive oil, divided

  • 1 head of garlic, halved crosswise

  • 9 juniper berries

  • 4 black peppercorns

  • 725ml dry white wine

  • 60ml best-quality red wine vinegar

  • 1 large beefsteak tomato, halved crosswise

  • 1 head of garlic, halved crosswise

  • 4 large sprigs sage

  • 475ml coco nano or cannellini (white kidney) beans, soaked overnight, drained

  • 2 tablespoons plus 1/4 cup olive oil

  • Kosher salt

  • 2 bunches mature spinach, tough stems removed

  • Kosher salt

  • 2 tablespoons olive oil, plus more for drizzling

  • 4 garlic cloves, thinly sliced

  • Flaky sea salt

Sprinkle pork all over with 3 tablespoons or 5 teaspoons salt. Tear 4 bay leaves and 1/4 cup sage leaves into small pieces and scatter over pork. Place pork on a wire rack set inside a rimmed baking sheet and cover loosely with plastic wrap; chill 12 hours.

Let pork sit at room temperature 1 hour. This will help it cook evenly.

Preheat oven to 232°C. Heat 2 tablespoons oil in a large heavy pot over medium-high. Cook pork, turning occasionally, until browned on all sides, 15–20 minutes. Transfer pork to a large plate.

Remove pot from heat and pour off any fat. Discard fat and any leaves in pot; wipe out pot. Add remaining 2 tablespoons oil to pot along with garlic, juniper berries, peppercorns, sage sprigs, and remaining 4 bay leaves. Cook over low heat until garlic just starts to brown around the edges, about 1 minute. Pour in wine and vinegar. Return pork to pot, placing fat side up, and cover with parchment paper, tucking edges down around sides of pork (this prevents it from drying out). Cover pot with a lid, transfer to oven, and cook pork 30 minutes. Reduce oven temperature to 300° and cook, turning pork every 30 minutes or so and adding a splash of water if braising liquid is reducing too quickly, until meat is very tender and pulling away from the bone, 2 1/2–3 hours.

Let pork sit until cool enough to handle. Remove bones; discard. Shred meat into 2”–3” pieces, removing any excess fat (it should pull apart very easily but still hold together in pieces). Transfer meat to a large saucepan and strain braising liquid over; discard solids. Cover and keep warm over lowest heat until ready to serve.

Combine tomato, garlic, sage, beans, and 2 tablespoons oil in a large pot. Pour in cold water to cover by 1 1/2” and bring to a simmer over medium heat, skimming foam from surface as needed. Reduce heat so that liquid is at a very gentle simmer; cook until beans are almost tender but still slightly starchy in the centres (you want them to be about 75 percent cooked), 35–45 minutes. Preheat oven to 149°C while the beans are still cooking.

Remove beans from heat; season with several generous pinches of salt and add remaining 60ml oil. Transfer to oven and bake without disturbing beans (you want a film to form on the surface) until tender, 15–25 minutes. Finishing the beans in the oven ensures that they are evenly cooked and creamy. Turn off oven and leave beans inside to keep warm until ready to serve.

Working in 2 batches, cook spinach in a large pot of boiling salted water until tender and no bite remains, about 2 minutes. Drain in a colander and let cool slightly, then squeeze out excess water.

Heat 2 tablespoons oil in a medium skillet over medium and cook garlic, stirring, until softened and barely golden, about 1 minute. Add spinach and stir just to coat leaves in oil and warm through.

To serve, spoon beans plus a bit of their cooking liquid onto plates. Arrange several pieces of pork and spinach over beans. Drizzle with oil and sprinkle with sea salt.

Beans can be made 1 day ahead. Let cool in liquid; cover and chill. Reheat gently before serving.

Disclaimer

While every effort has been made to ensure the information is accurate and up to date, individual needs may vary and dietary requirements can differ based on personal health conditions. Always check food labels and allergen information before preparing or consuming any recipe. If you have specific health concerns, allergies, intolerances, or are following a medically prescribed diet, seek advice from your GP, pharmacist, or a registered dietitian before making significant changes to your diet or lifestyle.

Article history

The information on this page is peer reviewed by qualified clinicians.

  • 28 Jan 2026 | Originally published

    Authored by:

    UK recipe editors

    Peer reviewed by

    UK recipe editors
flu eligibility checker

Ask, share, connect.

Browse discussions, ask questions, and share experiences across hundreds of health topics.

symptom checker

Feeling unwell?

Assess your symptoms online for free

Sign up to the Patient newsletter

Your weekly dose of clear, trustworthy health advice - written to help you feel informed, confident and in control.

Please enter a valid email address

By subscribing you accept our Privacy Policy. You can unsubscribe at any time. We never sell your data.