To begin, soak the dried black beans in cold water overnight. This helps soften the beans and speeds up cooking. Drain and rinse the beans the next day.
In a large pot over medium heat, add the vegetable oil and sauté the chopped bacon until it begins to crisp. Then, add the sausage, pork ribs, and pork belly. Sear the meats for 5-6 minutes until browned on all sides. This step builds a rich, smoky flavour base.
Add the chopped onion and minced garlic to the pot. Stir and sauté for about 5 minutes until softened and fragrant. The onion and garlic will add depth to the stew.
Add the soaked black beans to the pot along with the bay leaves. Stir everything together, ensuring the beans are evenly distributed among the meat.
Pour in enough water to cover the beans and meat by about 2 inches. Bring the mixture to a boil, then reduce the heat to low. Cover the pot and let the stew simmer gently for 1.5 to 2 hours. Stir occasionally to prevent sticking and check the liquid level, if necessary, add more water to keep the ingredients submerged.
After 1.5 hours, check the beans for tenderness. If they are soft but not mushy, season the stew with salt and black pepper to taste. Adjust the seasoning gradually, as the flavors develop more as the stew cooks.
Once the beans and meat are fully cooked and the flavours have melded, remove the bay leaves from the pot. Stir in freshly chopped cilantro just before serving for a burst of freshness.
Serve the feijoada hot, accompanied by steamed white rice, collard greens sautéed with garlic, and orange slices for a zesty contrast. Traditionally, farofa (toasted cassava flour) is also served as a crunchy side to absorb the rich flavors of the stew. Garnish with a few fresh cilantro leaves for an authentic touch.