Place leftover hambone in a large stockpot or Dutch oven and add enough water to cover the bone halfway, about 6-8 cups.
Bring to a boil and then the reduce heat and simmer until very fragrant, about 1 hour.
Once the broth is finished, remove and discard the ham bone.
Add the bacon to a second large stockpot or Dutch oven over medium heat.
Cook the bacon for a few minutes until it’s created enough grease to start cooking the onions and garlic.
Add garlic and onions to the stockpot.
Cook, stirring occasionally, until onions have become translucent, about 2-3 minutes.
Next stir in carrots, sweet potatoes, thyme and bay leaves.
Add in the ham broth and then season with salt and pepper, to taste.
Bring the soup to a boil.
Once the soup is boiling, reduce heat and simmer until potatoes are tender, about 10-12 minutes.
Stir in ham and spinach then let cook until the spinach has wilted and the ham is cooked through, about 1-2 minutes.
Serve immediately.