The difference between MoveTo() and PivotTo() is that MoveTo() is like changing the position of the model while PivotTo() is like changing the CFrame of the model
And yeah, you can anchor the primary part of the model, weld all the parts to it and move that part directly. It doesn’t change anything if the model has a primary part or not in this case
SpecialMeshes needs to be the child of a BasePart. The special mesh will overwrite the rendering of the BasePart with the mesh you enter, but it wont overwrite the physics or anything like that (it also doesn’t have a material property and stuff which sucks). Offset is basically the position the specialmesh will be rendered at, relative to the BasePart, including orientation.