Preheat oven to 375 degrees F. Line muffin tray with muffin cups. In a medium bowl, mix together flour, baking powder, and salt and whisk well. In a stand mixer using the paddle attachment, mix together on medium-high speed, the butter and granulated sugar for 4-5 minutes, until light and fluffy. Add the eggs one at a time, beating well after each addition until the egg is incorporated before adding the next one. Then beat in the vanilla.
Add milk, alternating it with the dry ingredients in two or three batches. Make sure not to over mix. Fold in the blueberries using a spatula. To make crumb topping, mix together the butter, sugars, cinnamon, salt and flour. Mix with a fork until crumbly.
Spoon batter into muffin tins about 3/4 full. Top each muffin with a generous tablespoon of the crumb topping. Bake for about 30 minutes or until golden brown and a toothpick inserted in the center comes out clean. Let muffins cool slightly in the muffin tray, then remove to a wire rack and let cool completely.