Southern Ham and Beans Recipe
This easy ham and beans recipe simmers pinto beans with a ham hock until tender and creamy, perfect with cornbread, rice, or your favorite Southern sides.

A good ham and beans recipe is classic comfort food.
This version uses dried pinto beans, a meaty ham hock, and simple pantry flavors to make a hearty beans and ham recipe that works for Sunday dinner or a weeknight.
The pinto beans soak overnight, then simmer low and slow until they’re tender, creamy, and surrounded by a rich, savory broth.
Serve my ham and pinto beans recipe with cornbread, over rice, or alongside your favorite Southern sides. It’s budget-friendly, filling, and the leftovers reheat like a dream.
You may also love our ham hock and beans, oven baked glazed ham, and ham and cheese pasta salad.
What’s you’ll need
- Dried pinto beans: Rinse and pick through the beans to remove any damaged pieces or debris before soaking.
- Water: You’ll need water to soak and cook the beans. The exact amount is flexible. Just keep the beans covered by about 1 to 1 ½ inches of water while they simmer.
- Butter, onion, and garlic.
- Ham hocks, ham shank, or diced ham.
- Bay leaf and black pepper.
- Salt (added at the end).

How to make this ham and beans recipe
This recipe is really easy and versatile. Here’s how I make it:

- Rinse the dried pinto beans and pick out any damaged beans or debris. Place the beans in a large bowl and cover them with about 1 inch of water. Cover and soak for 8 to 12 hours (or overnight). Drain and rinse the beans before cooking.

- Heat a large pot over medium heat. Add the butter and diced onion and cook until the onion softens. Add the garlic and cook for about 30 seconds.

- Add the soaked and drained beans to the pot along with the ham hocks, bay leaf, black pepper, and enough water to cover the beans by about 1 to 1 ½ inches.

- Bring the pot to a boil, then reduce the heat to a low simmer. Cover with the lid slightly cracked so some steam can escape. Simmer for 90 to 120 minutes, stirring every 15 to 20 minutes.

- When the beans are tender, remove the ham hock from the pot. Use a potato masher to mash 1 to 2 cups of the beans, and return them to the pot. Shred the meat from the ham hock, and place it in the pan.

- Simmer uncovered for another 10 to 15 minutes then remove the bay leaf. Taste the ham and beans and add salt as needed.
Tips for the best ham and pinto beans
- Keep the beans covered. Think of the water amounts as a guide, not a hard rule. The beans should stay submerged by about an inch the whole time they cook. Add more hot water during cooking if the liquid gets low.
- Adjust the texture to your liking. For a thicker, creamier beans and ham recipe, mash more beans with a potato masher. For a soupier pot, stir in a bit more water or broth and simmer briefly.

Can I use a different type of bean?
Absolutely! This recipe is written as a pinto beans recipe, but you can use great northern beans, navy beans, or a mix. Just keep an eye on the cook time since some beans soften faster than others.
Storage
- Fridge: Let the ham and beans cool to room temperature, then transfer to an airtight container. Store in the refrigerator for up to 3 to 4 days.
- Freezer: Freeze in airtight containers or freezer bags (with some broth) for up to 2 to 3 months.
More Recipes to Try

Ingredients
- 1 pound dried pinto beans, sorted and rinsed
- Water enough to cover the beans by 1 inch for soaking and 1 to 1 ½ inches while cooking
- 2 tablespoons unsalted butter
- 1 medium onion, diced
- 3 garlic cloves, minced
- 1 meaty ham hock, or 2 to 3 cups diced cooked ham
- 1 bay leaf
- ½ teaspoon ground black pepper
- Salt, to taste
💌 Don't forget to save this recipe!
Instructions
- Add sorted, rinsed pinto beans to a large bowl. Add enough water to cover the beans by 1 inch, cover the bowl, and soak for 8 to 12 hours. Drain and rinse.1 pound dried pinto beansWater enough to cover the beans by 1 inch for soaking and 1 to 1 ½ inches while cooking
- Heat a large pot or Dutch oven over medium heat. Add the butter and onion and cook until softened, about 5 minutes. Stir in the garlic and cook for 30 seconds.2 tablespoons unsalted butter1 medium onion3 garlic cloves
- Add the soaked beans, ham hock (or diced ham), bay leaf, pepper, and enough fresh water to cover the beans by 1 to 1 ½ inches. Stir and bring to a boil.1 bay leaf1 meaty ham hock½ teaspoon ground black pepper
- Reduce to a low simmer, partially cover, and cook for 90 to 120 minutes, stirring occasionally. Add more hot water as needed to keep the beans just covered until they are tender.
- Remove the ham hock. Mash 1 to 2 cups of beans in the pot to thicken, then shred the ham, discard the bone and skin, and return the meat to the pot. Simmer uncovered for 10 to 15 minutes.
- Remove the bay leaf. Taste and season with salt as needed, then serve hot.Salt
How to Store Leftovers
- Store in the refrigerator for up to 3 to 4 days.
Notes
Nutrition
*2/12/26: Post text and recipe updated.
Meet Kimberly
Hi, I’m Kimberly Vargo! Comfort food is at the heart of everything I make like easy dinners and sides to desserts, cocktails, and condiments. A lot of my inspiration comes from old family recipes, personal favorites, and vintage cookbooks.


