3tablespoonsminced fresh dill, plus extra for garnish
Kosher or coarse salt and freshly ground pepperto taste
Using a sharp knife, cut the kernels from the corn; you should have about 4 cups, give or take. Break the corn cobs in half, and reserve the kernels.
Place the whole milk and the half-and-half in a medium pot along with the corn cobs and bring to a simmer over medium high heat. Adjust the heat and simmer for 10 minutes. Remove the corn cobs with tongs, reserving the milk mixture.
Meanwhile, cut the salmon into 1-inch pieces. In a large soup pot over medium heat, melt the butter. Add the salmon and sauté just until the outside turns opaque, about 2 minutes. Remove from the skillet with a slotted spoon and set aside.
Return the pot to the stove and heat the olive oil over medium-high heat. Add the shallots and sauté until softened, about 3 minutes. Add the broth, increase the heat to high and bring to a simmer. Reduce the heat to medium-high and add the potatoes. Partially cover the pot, keep the broth at a simmer, and cook until the potatoes are tender, 12 to 15 minutes.
In a blender or food processor, place 1 cup of the corn kernels use a slotted spoon to scoop out about ½ cup of cooked potatoes and add those to the bender; pour in about half of the milk mixture, and puree until smooth.
Add the pureed mixture along with the remaining corn kernels and the remaining milk mixture back into the pot, and return to just barely a simmer. Simmer gently for 2 minutes, then add the partially cooked salmon and the 3 tablespoons dill. Season with salt and pepper and simmer for another 2 minutes until the salmon is just cooked through. Use the back of the spoon to break up the salmon into smaller chunks.
Taste and adjust seasonings as needed and serve hot, with a sprinkle of fresh dill.