Preheat oven to 350°F (175°C).
Boil sweet potatoes until tender, about 15 minutes.
Drain and mash sweet potatoes in a bowl.
Add milk, butter, sugar, eggs, vanilla, cinnamon, and salt.
Mix until smooth and fluffy using a whisk or mixer.
Transfer mixture to a greased 9x13-inch baking dish.
In a separate bowl, combine brown sugar, flour, melted butter, and pecans.
Sprinkle topping evenly over sweet potato mixture.
Bake for 30–35 minutes until golden and set.
Remove from oven and let cool slightly before serving.