Prepare the Beans: Drain and rinse the soaked beans. Set them aside.beans.
Sauté vegetables: In a large pot or Dutch oven, heat the olive oil over medium heat. Add the chopped onion, garlic, carrots, and celery. Sauté for about 5 minutes, until the vegetables are tender.
Add Tomatoes and Seasonings: Stir in the diced tomatoes, bay leaf, dried thyme, and paprika. Cook for another 2 minutes.
Add Broth and Beans: Pour in the vegetable or chicken broth and add the drained beans. Bring the mixture to a boil.
Simmer: Reduce the heat to low, cover the pot, and let the soup simmer for about 1 hour and 15 minutes, or until the beans are tender.
Season to Taste: Remove the bay leaf and season the soup with salt and pepper to taste. If using, add the chopped spinach or kale and cook for another 5 minutes, until the greens are wilted.
Finish with Lemon Juice: (Optional) Stir in the lemon juice for a burst of freshness before serving.
Serve: Ladle the hot soup into bowls and enjoy with crusty bread or a side salad.