Preheat the oven to 400 degrees.
Peel the sweet potatoes, cut into 1 inch cubes, and spread evenly on a baking sheet lined with parchment. Bake in the preheated oven until tender, about 35-40 minutes.
In a high-powered blender (or a large bowl with a hand mixer), blend together the potatoes, brown sugar, melted butter, cream, cinnamon, and vanilla until completely smooth. Let cool slightly.
Add the egg and blend again until well combined (adding the egg when everything is still really hot will cause the egg to start cooking too soon).
Add the sweet potato mixture to an 8x8 casserole dish.
To make the topping, mix together the brown sugar, flour, cinnamon, and melted butter in a bowl. Keep mixing until everything is well combined and crumbly. Sprinkle the mixture evenly over the sweet potatoes.
Bake in the oven until heated through and the topping is golden, about 35-40 minutes.
Add the marshmallows on top (add as many as you like!) and return to the oven. Bake until the marshmallows are slightly puffy and browned, about 10 minutes.