Rinse beans. In a large saucepan or Dutch oven combine beans and 4 cups of the water. Bring to boiling; reduce heat and simmer 2 minutes. Remove from heat; cover and let stand 1 hour. (Or, soak the beans in water overnight in a covered pan.)
Drain and rinse beans. Return beans to pan. Add the remaining water, carrot, onion, celery, bouillon granules, basil, thyme, pepper, bay leaves, and garlic. Bring to boiling; reduce heat. Cover and simmer 1-1/2 to 2 hours or until beans are tender. Stir in ham and spinach or cabbage. Simmer 3 to 5 minutes more. Remove bay leaves. Makes 5 servings.