Soak the beans overnight or for at least 8 hours in plenty of water at room temperature. (SEE NOTES)
Drain the beans and discard the water.
Preheat a large pot over medium heat and place the bacon at the centre. Let it become golden for a couple of minutes per side. Remove and reserve.
Add the oil and onion and cook it until it's slightly golden, stirring occasionally.
Add the garlic and stir constantly for 1 minute.
Add the beans and the water and stir. Also, add the bacon we cooked before.
Bring everything to a slow simmer and cover. Let it cook for 1h-1h30min or until if you crush a bean against the side of the pot it easily disintegrates. If using a pressure cooker, 40min will be perfect at high pressure.
Blend half of the beans. This makes them creamy and delicious. Season with salt and pepper.
Notes
If using a pressure cooker such as an Instant Pot, you don't need to soak them. Increase cooking time on high pressure to 1h20min.