Wash, peel, and cut sweet potatoes into 2-inch chunks. Boil until fork-tender, drain, and let dry for 2–3 minutes.
Mash the sweet potatoes with butter, milk, and brown sugar until smooth. Add eggs, vanilla, cinnamon, nutmeg, and salt. Mix well.
Spread the sweet potato mixture evenly into a greased 9x13-inch baking dish.
Combine pecans, flour, brown sugar, and melted butter to make the streusel. Sprinkle evenly on top.
Bake uncovered at 350°F for 25 minutes. Add marshmallows and bake 10–15 more minutes until golden. Let rest 10 minutes before serving.