Memory hunger

ftpcopy needs about 532 KB of dynamically allocated memory to mirror my ftp server (874 files, 48 MB), and about 5.5M to mirror the /usr/local area on my ftp server (11989 files, 1.1 GB).
mirror needs more than 3 MB for my ftp server, and more than 11 MB for the /usr/local area.

Speed

ftpcopy needed about 110 seconds to copy my site. Subsequent runs which don't need to copy anything take about 1.04 seconds.
mirror needed about 250 seconds to copy my site. Subsequent runs which don't need to copy anything take about 2.6 seconds.

Ease of use

ftpcopy does the right thing by default, it creates a copy of a ftp site in a local directory. The documentation is small.
mirror needs a configuration file. The documentation is large.

Impact on mirrored sites

ftpcopy behaves like a good citizen and doesn't try to kill it's server.
mirror by default issues an recursive directory listing command, which can eat an astonishing amount of server resources. The default can be changed, but almost nobody does that.

EPLF

ftpcopy understands EPLF and can create copies of, for example, ftp://cr.yp.to and ftp://ftp.ohse.de. EPLF allows it to correctly set the modification time of the files, no matter what time zone the FTP server is in.
mirror fails to understand this.

MLSD

ftpcopy uses, if available, the relatively new MLSD command for directory listings. MLSD offers the same features as EPLF does.
mirror fails to understand this.