Southern-style Pinto Beans are easy to make on the stove, with a ham hock and dried pinto beans. Have a leftover ham bone from a holiday meal? This is the perfect way to use it, and create a delicious recipe!

pinto beans in bowl with spoon and cornbread muffin on the side

Growing up in Oklahoma, we’re right smack in the middle of the country. Some people call us Southern, some call us Midwestern, but the great thing about being in the middle is that we pull our culinary tastes from all around us, the South, Midwest, and of course, Tex Mex.

I would say that my Grandma was definitely a Southern-style cook and I learned a lot from her in the kitchen. She would always cook pinto beans from scratch with ham, giving them a rich, salty taste that is so delicious.

After cooking a Honey Baked Ham for Easter, I knew that I couldn’t just toss the ham bone in the trash. Oh no, at my Grandma’s house that ham bone is the secret ingredient for making the best pinto beans!

While cooking pinto beans with dried beans does take some time, it’s actually incredibly easy and the result is a tasty side dish, or main dish. In our house, we would always serve the beans with cornbread.

You can add another main dish, or side dish, to make it a complete meal, or just dig right into a big bowl of beans with a side of cornbread muffins for dipping!

ingredients for pinto beans on white wood board

Ingredients

  • Dried pinto beans – pick these up in a bag at the grocery store, or in the bulk bins. The fresher the beans are, the quicker they will cook. While dried beans are shelf-stable, they will take longer to cook, the older they are.
  • Oil – any neutral flavored oil will work for this recipe, canola oil, vegetable oil, or a mild olive oil.
  • Onion – I recommend a yellow onion for it’s neutral flavor profile.
  • Garlic – fresh minced cloves will always provide the best flavor.
  • Ham hock (or ham bone) – you can purchase a ham hock anytime from the grocery store in the meat department. The ham hock comes from the bottom part of the leg and has been cured and smoked. If you have a leftover ham bone, you can use this in place of the ham hock. The ham bone is typically from the upper portion of the leg and will have more meat on it than the ham hock. If making this recipe around the holidays and you have a leftover ham bone, definitely use that! If making this another time of the year, purchase a ham hock at the grocery store.
  • Water + chicken broth – to make the most flavorful pinto beans, I like to cook them in a combination of half water and half chicken broth (or chicken stock). You can always use just water for the cooking liquid, but you will want to taste the beans at the end and add more salt, if needed.
  • Salt + black pepper – to season the beans.
  • Bay leaves – as the leaves simmer in the liquid with the beans, they’ll add wonderful flavor to the dish.

Instructions

I’ve included step by step photos below to make this recipe easy to follow at home. For the full detailed recipe instructions, scroll to the recipe card at the bottom of this post.

  1. Prep the beans. Add the beans to a fine mesh strainer, or colander, and rinse the beans under cold water, removing any debris from the beans. Transfer the beans from the strainer to a large bowl and add enough water to completely cover the beans. Soak the beans for at least 8 hours, or up to 24 hours. After the soaking time, drain the beans from the water and set them aside.
  2. Saute onions and garlic. Add oil to a large stockpot on the stove over medium-high heat. Add diced onions and cook for 4-5 minutes. Add minced garlic and cook for an additional minute.
  3. Add ham and beans. Place the ham hock, or ham bone, in the pot, along with the soaked and drained pinto beans.
  4. Add liquid and season. Pour water and chicken broth (or just water) into the pot. Add salt, black pepper, and bay leaves. Stir to combine everything. Make sure that the beans are completely covered in liquid. It’s okay if the ham bone is not completely covered.
  5. Simmer the beans. Bring the liquid to a boil, reduce the heat to medium-low and simmer uncovered for 1-2 hours, or until the beans are softened. If the water level drops below the beans, add more water so the beans are covered at all times. Use a slotted spoon to remove and discard the bay leaves before serving the beans. Use tongs to remove the ham hock, or ham bone, from the pot and remove any meat that’s on the bone. Add the meat back to the beans before serving and discard the ham bone or hock.
cooked pinto beans in bowl with spoon

Frequently asked questions

  • Can you make this pinto beans recipe with bacon? Yes! To start the recipe, dice up a pound of bacon, add it to the pot and cook for 3-4 minutes. Add the diced onions and cook for 4-5 minutes. Do not add oil! You can use the bacon grease to cook the onions and garlic, instead. Add the minced garlic and cook for 1 minute. Add the beans, water, broth, salt, pepper and bay leaves to the pot. Bring to a simmer, then continue to cook the beans as instructed.
  • How do you tell when the pinto beans are done? The pinto beans are done cooking when they’re fork-tender. You can test if they’re done by smooshing a bean or two against the side of the pot with a fork, it should collapse easily, but not be mushy.
  • Do pinto beans have to be soaked before cooking? I do recommend soaking the beans before cooking them as it helps them cook faster, more evenly, and will result in a better final texture. It also makes the beans easier to digest. If you don’t pre-soak the beans, the recipe will still turn out. It’s just better with a pre-soak!
  • How do you quick soak pinto beans? Add the beans to a large pot and cover with water. Place on the stove over high heat and bring the water to a boil. Once boiling, remove the pot from the heat on the stovetop, cover and soak the beans for 1 hour before making this recipe.
  • How long does it take to boil pinto beans? The time it takes to cook the beans will depend on how fresh the beans are, how long you soak the beans before cooking, and how you like your beans cooked. I recommend starting to check the beans after 1 hour, then every 15 minutes after that until they’re cooked to your desired texture.
  • How do you make vegetarian pinto beans? Omit the ham bone and replace the chicken broth with vegetable broth to make vegetarian pinto beans on the stove.

What to serve with them

These beans are a great side dish, or main dish. Pair them with other Southern recipes, or your favorite Tex Mex dishes.

Storage and reheating

Store any leftover cooked pinto beans in the refrigerator, in an airtight container, for up to 5 days. Or transfer them to a freezer-safe container and freeze the beans for up to 6 months.

Reheat the beans in a pot on the stove over medium heat for 5-10 minutes. Or reheat a single serving in a bowl in the microwave for 2-3 minutes.

beans in bowl with spoon

More bean recipes

Beans are full of plant-based protein, fiber and vitamins, and are an excellent source of folate. Add more beans to your weekly menu with these easy recipes!

cooked pinto beans in bowl with spoon and cornbread
Print Pin
5 stars (1 rating)
Rate this Recipe

Pinto Beans

Southern-style Pinto Beans are easy to make on the stove with a ham hock and dried pinto beans. Have a leftover ham bone from a holiday meal? This is the perfect way to use it, and create a delicious recipe!

Ingredients

Instructions

  • Add the beans to a fine mesh strainer, or colander, and rinse the beans under cold water, removing any debris from the beans.
  • Transfer the beans from the strainer to a large bowl and add enough water to completely cover the beans. Soak the beans for at least 8 hours, or up to 24 hours.
  • After the soaking time, drain the beans from the water and set them aside.
  • Place a large pot on the stove over medium-high heat and add the oil.
  • Once the oil is hot, add the onion and cook for 4-5 minutes, add the garlic and cook for an additional minute.
  • Add the ham hock (or ham bone) and beans to the pot, then pour in the water and chicken broth, and season with the salt, black pepper, and bay leaves.
  • Bring the liquid to a boil, then reduce the heat to medium-low and simmer the beans uncovered for 1-2 hours. If the water level drops below the beans, add more water so the beans are covered at all times. To test if the beans are done, use a fork to smoosh a bean or two against the side of the pot, it should collapse easily, but not be mushy. I recommend checking after 1 hour of cooking. If they're not done at the time, continue checking every 15 minutes, until the beans are tender.
  • Use a slotted spoon to remove the bay leaves before serving.
  • Remove the ham hock from the pot and remove any meat that’s on the bone. Add the meat back to the beans before serving, and discard the ham bone or hock.

Notes

  • Using a ham hock vs. ham bone: you can purchase a ham hock anytime from the grocery store in the meat department. The ham hock comes from the bottom part of the leg and has been cured and smoked. If you have a leftover ham bone, you can use this in place of the ham hock. The ham bone is typically from the upper portion of the leg and will have more meat on it than the ham hock. If making this recipe around the holidays and you have a leftover ham bone, definitely use that! If making this another time of the year, purchase a ham hock at the grocery store.
  • Using bacon instead of ham: start the recipe by dicing up a pound of bacon, add it to the pot and cook for 3-4 minutes. Add the diced onions and cook for 4-5 minutes. Do not add oil! You can use the bacon grease to cook the onions and garlic, instead. Add the minced garlic and cook for 1 minute. Add the beans, water, broth, salt, pepper and bay leaves to the pot. Bring to a simmer, then continue to cook the beans as instructed.
  • Chicken broth: if you don’t have broth available, you can use 8 cups of water as the cooking liquid. Just be sure to taste the beans at the end and add more salt, if needed.
  • To quick-soak the beans: add the beans to a large pot and cover with water. Place on the stove over high heat and bring the water to a boil. Once boiling, remove the pot from the heat on the stovetop, cover and soak the beans for 1 hour before making this recipe.
  • To make this recipe vegetarian: omit the ham bone and replace the chicken broth with vegetable broth to make vegetarian pinto beans.
  • Storage: store any leftover cooked pinto beans in the refrigerator, in an airtight container, for up to 5 days. Or transfer them to a freezer-safe container and freeze the beans for up to 6 months.
  • Reheating: reheat the beans in a pot on the stove over medium heat for 5-10 minutes. Or reheat a single serving in a bowl in the microwave for 2-3 minutes.

Nutrition Facts

Calories 386kcal (19%)Carbohydrates 33g (11%)Protein 27g (54%)Fat 16g (25%)Saturated Fat 5g (25%)Polyunsaturated Fat 2gMonounsaturated Fat 7gCholesterol 64mg (21%)Sodium 1172mg (49%)Potassium 939mg (27%)Fiber 8g (32%)Sugar 2g (2%)Vitamin A 7mgVitamin C 5mg (6%)Calcium 83mg (8%)Iron 4mg (22%)
Did you make this recipe?Tag @WhitneyBond on Instagram and hashtag it #WBRecipes!

We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for sites to earn advertising fees by advertising and linking to amazon.com.