Are the two servers UNIX machines? If so, I really like the rsync command for doing this. It's a pretty common package on most UNIX systems these days.
To do this, create a script called something like syncit.sh
#######snip######
#!/bin/sh
# syncit.sh script on server.foo.com
/usr/bin/rsync --recursive --perms --update --links --delete --owner --group --times --progress /path/to/source/directory/* server.bar.com:/path/to/destination directory/`
######/snip#####
The machine we are on is called server.foo.com, while the machine we want to send the files to is called server.bar.com
It uses ssh to make the connection, so you have to have ssh connectivity between them. Also, it will ask you for your password, so there are a few more steps if you want to have this happen all by itself. If this seems like the road you want to go down, I can help you with the other steps.