Sautee celery and carrot in butter until soft, then add garlic for 2 more minutes until garlic browns.
Add all other ingredients, bring to a boil, then reduce to simmer for at least an hour, occasionally stirring, until desired thickness.
In our ham’s case, we began by chopping a good bit of the meat off the bone, and then chopping this into smaller bits. This was to expose more of the meat and bone to the soup.
After it had simmered for 30 minutes, the rest of the meat came off the bone easily. We chopped it, and then returned everything to the pot to finish cooking.
When all was said and done, we mashed it a bit.
Top with croutons or greek yogurt!