Preheat the Oven: Preheat your oven to 350°F (175°C). Grease a 9x13-inch baking dish.
Cook the Sweet Potatoes: Place the peeled and cubed sweet potatoes in a large pot, cover them with water, and bring to a boil. Cook for 15-20 minutes until the potatoes are tender. Drain the water.
Mash the Sweet Potatoes: In a large mixing bowl, mash the sweet potatoes with a potato masher or hand mixer. Add the melted butter, milk, brown sugar, eggs, vanilla extract, cinnamon, and salt. Mix until smooth and creamy.
Transfer to Baking Dish: Spread the sweet potato mixture evenly in the prepared baking dish.
Prepare the Topping: In a small bowl, mix together the flour, brown sugar, pecans, and melted butter until it resembles coarse crumbs.
Top the Casserole: Sprinkle the pecan topping over the sweet potatoes. If using, you can also add a layer of mini marshmallows on top of the pecan mixture.
Bake: Bake the casserole in the preheated oven for 25-30 minutes, or until the topping is golden and the marshmallows are toasted.
Serve: Let the casserole cool for a few minutes before serving.