
There’s nothing quite like a steaming bowl of ham and beans – it’s pure comfort in a bowl! This classic dish is hearty, satisfying, and absolutely delicious. The beauty of this ham and beans recipe is that it’s incredibly easy to make, yet tastes like you’ve been cooking all day. With just a handful of simple ingredients and minimal prep work, you’ll have a restaurant-quality meal on your table in no time.
This recipe uses dried beans that are soaked and cooked until tender, then combined with savory ham, aromatics, and warm spices. The result is a rich, flavorful broth that’s perfect for serving over rice or with cornbread on the side. Whether you’re looking for a weeknight dinner or a crowd-pleasing dish for a gathering, this ham and beans recipe is sure to become a family favorite.
What I absolutely love about this recipe is how versatile it is. You can customize it based on what you have on hand – add extra vegetables like carrots or celery, use different types of beans, or adjust the seasonings to your preference. It also makes excellent leftovers and freezes beautifully, making it perfect for meal prep.
One of the best things about ham and beans is that it’s an economical meal that doesn’t skimp on flavor. By using an affordable ham hock or leftover ham, you create an incredibly rich and savory base for the beans. The chickpea salad is a wonderful fresh complement if you want to serve something lighter alongside this hearty dish.
If you’re new to cooking dried beans, don’t worry! This recipe walks you through every step, making it foolproof. The slow, gentle cooking process allows all the flavors to meld together beautifully. Plus, there’s something so rewarding about making a dish from scratch that fills your home with the most incredible aroma.
For those who love classic comfort food, this ham and beans recipe delivers every single time. Serve it family-style in a big pot, and watch everyone come back for seconds. It’s the kind of meal that brings people together and keeps them satisfied for hours.
If you’re looking to round out your menu, consider pairing this with pickled red onions for a bright, tangy contrast. You could also check out our heavy cream alfredo sauce if you want to serve these beans over pasta for a different twist. For more inspiration on bean-based dishes, Serious Eats has wonderful resources on legume preparation techniques.
This recipe also works wonderfully with shishito peppers as a side dish for added depth. The beauty of ham and beans is that it’s a complete meal on its own, but it’s also flexible enough to pair with virtually any side dish you choose. Whether you’re cooking for a family dinner or meal prepping for the week ahead, this recipe is absolutely foolproof and will deliver delicious results every single time.
Ingredients
- 1 pound dried navy beans or great northern beans
- 8 cups chicken or vegetable broth
- 1 ham hock or 2 cups diced cooked ham
- 1 large onion, diced
- 3 cloves garlic, minced
- 3 large carrots, diced
- 2 celery stalks, diced
- 2 bay leaves
- 1 teaspoon dried thyme
- 1 teaspoon smoked paprika
- ½ teaspoon cayenne pepper
- Salt and black pepper to taste
- 2 tablespoons butter or olive oil
- 4 slices bacon, chopped (optional but recommended)
- 1 teaspoon apple cider vinegar or red wine vinegar
- Fresh parsley for garnish (optional)

Instructions
- Rinse the dried beans thoroughly under cold water and place them in a large pot or bowl. Cover with water by about 3 inches and let them soak overnight, or at least 8 hours. This helps soften the beans and reduces cooking time. If you’re short on time, you can use the quick-soak method: bring the beans and water to a boil, then remove from heat, cover, and let sit for 1 hour.
- The next day, drain the soaked beans and rinse them again under cold water. This removes any debris and helps reduce gas.
- In a large pot or Dutch oven, heat the butter over medium-high heat. If using bacon, add the chopped bacon first and cook until crispy, about 5 minutes. Remove with a slotted spoon and set aside, leaving the bacon fat in the pot.
- Add the diced onion to the pot and sauté for about 3-4 minutes until softened and fragrant. Stir occasionally to prevent sticking.
- Add the minced garlic and cook for another minute, stirring constantly, until very fragrant. Be careful not to burn the garlic.
- Add the diced carrots and celery to the pot and cook for another 3-4 minutes, stirring occasionally. This builds a flavorful aromatic base for your beans.
- Pour in the broth and bring to a simmer. Stir in the drained beans, ham hock or diced ham, bay leaves, thyme, smoked paprika, and cayenne pepper.
- Bring the mixture to a boil, then reduce heat to low and partially cover with a lid. Simmer gently for 2 to 2.5 hours, stirring occasionally. The beans should be very tender and the broth should be rich and flavorful. Add the reserved bacon back to the pot during the last 30 minutes of cooking.
- Check the beans periodically and add more broth or water if the mixture becomes too thick. The finished dish should have a broth-like consistency, not be dry.
- Once the beans are very tender and the flavors have melded together beautifully, taste and adjust seasonings. Add salt and black pepper to taste, keeping in mind that the ham and bacon already provide saltiness.
- Stir in the apple cider vinegar or red wine vinegar at the end for a subtle depth of flavor.
- If you used a ham hock, remove it from the pot carefully. Once it’s cool enough to handle, pull any meat from the bone and return the meat to the pot, discarding the bone.
- Ladle the ham and beans into serving bowls. Garnish with fresh parsley if desired. Serve hot with cornbread, crackers, or over rice.

Pro Tips
HAM SELECTION: You can use a ham hock, ham bone, or cooked diced ham. A ham hock or bone creates the most flavorful broth but requires removing the bone at the end. Diced cooked ham is more convenient and works beautifully if you’re short on time.
BACON IS OPTIONAL: While bacon adds wonderful smoky depth to this dish, you can absolutely skip it if needed. The ham provides plenty of flavor on its own.
BEAN VARIETIES: This recipe works with navy beans, great northern beans, pinto beans, or even a combination of legumes. Each variety will give slightly different textures and flavors, so feel free to experiment.
COOKING TIME VARIATIONS: The cooking time can vary depending on how old your dried beans are and your stove. Older beans may take longer. Start checking for tenderness around the 2-hour mark.
SEASONING NOTES: Taste the broth as you cook – you may want to add the salt gradually since the ham and bacon already contribute significant saltiness. The apple cider vinegar at the end brightens the flavors beautifully.
SERVING SUGGESTIONS: Serve this hearty dish over rice, with cornbread, or with crusty bread for soaking up the delicious broth. A simple green salad makes an excellent fresh counterpoint to the richness of this dish.
STORAGE AND FREEZING: This recipe makes excellent leftovers and actually tastes even better the next day as flavors continue to develop. Store in an airtight container in the refrigerator for up to 5 days, or freeze for up to 3 months. Thaw overnight in the refrigerator before reheating gently on the stovetop.
REHEATING: Reheat gently over low heat on the stovetop, adding a splash of broth if needed to restore the consistency. You can also reheat in the slow cooker on low for 2-3 hours.
NUTRITION: Ham and beans is a protein-rich, fiber-packed meal that keeps you satisfied for hours. It’s naturally hearty and filling, making it perfect for cool weather or anytime you crave comfort food.
VARIATIONS: Add diced potatoes for extra heartiness, include diced tomatoes for brightness, or stir in some hot sauce for heat. Some families add a splash of molasses for subtle sweetness.
