Melt the butter with the olive oil in a large pot or Dutch oven over medium-high heat. Add the onion, season with 1/2 teaspoon salt and cook, stirring occasionally, until softened but not browned, about 4 minutes. Add the celery, celery root and 1 teaspoon salt. Cook, stirring occasionally, until the celery is tender, about 7 minutes.
Add the bay leaf, chicken broth and 2 cups water and bring to a boil. Reduce the heat to medium low and cook until the celery root is very soft, about 20 minutes. Discard the bay leaf. Add the heavy cream and return to a simmer, then remove from the heat and let cool slightly.
Working in batches, transfer the soup to a blender and puree until smooth, adding some herbs to each batch; return to the pot and reheat if needed. Stir in the celery salt and serve with toppings.