Preheat the oven to 400 degrees F.
Melt the butter in a 6-quart stock pot over medium-high heat. Add the onions and celery. Season with salt and black pepper, stirring, until the vegetables are soft and lightly golden, about 8 minutes.
Add the bay leaf and garlic, stirring for 2 minutes. Add the stock and turnips and bring the mixture to a boil. Reduce the heat to medium and simmer, uncovered, until the turnips are very soft and the mixture is thick and creamy, about 1 hour.
Remove the soup from the heat. Discard the bay leaf. With a hand-held blender, puree until smooth. Slowly add the cream. Stir to blend. Reseason the soup.
In a small saute pan, over medium heat, render the ham until crispy. Remove and drain on paper towels. Set aside. Toss the cornbread with olive oil. Season with salt and pepper. Place on a baking sheet and toast until golden brown, about 6 to 8 minutes. To serve, ladle the soup into individual bowls. Garnish the soup with the crispy ham and croutons.