Soak the beans: Place the dried beans in a large bowl and cover them generously with water. Soak for 8 hours or overnight. Drain and rinse.
Cook the beans: Transfer the soaked beans to a large pot and cover them with fresh water. Bring to a boil, then reduce the heat and simmer until the beans are tender but still hold their shape, approximately 45–75 minutes depending on the beans.
Prepare the aromatics: Heat olive oil in a large oven-safe Dutch oven. Add the chopped onion and cook for 5–7 minutes until softened. Add the garlic and cook for another 30 seconds.
Build the sauce: Add crushed tomatoes, tomato paste, brown sugar, molasses, mustard, Worcestershire sauce, smoked paprika, black pepper, salt, vinegar, and broth. Stir thoroughly.
Add the beans: Drain the cooked beans and add them to the sauce. Stir gently so the beans remain intact.
Bake: Cover the Dutch oven and bake at 350°F (175°C) for about 1 hour. Remove the lid and continue baking for another 30–45 minutes, or until the sauce is thick and glossy.
Adjust the seasoning: Taste the beans and add additional salt, mustard, vinegar, or sweetness according to preference.
Rest and serve: Allow the beans to rest for 10–15 minutes before serving. The sauce will continue to thicken as it cools slightly.