rsync is the best choice for migration: transfers only changed blocks, uses SSH encryption, and supports incremental sync.
rsync -avz --progress --delete /var/www/example.com/ root@new-server:/var/www/example.com/
tar -czf - /var/www/example.com/ | ssh root@new-server "tar -xzf - -C /var/www/"
Plain FTP is insecure — always use SFTP, SCP, or rsync over SSH when transferring files over the internet.