scenario #1) you don't mind publishing your source code, and you need to publish you aps.net web site via ftp to your host. visual studio's built in "copy web site" tool is prohibitively slow because it scans the server for changes, and your website has many folders and files. (your host may even throttle your ftp connections after visual studio scans a few directories.) analyzing the ftp server is unnecessary because you are the only person who updates your website. you only want to do a one-way sync to the ftp server without scanning the server. your hosting company does not support svn.
scenario #2) you use, microsoft expression web, and want to publish only changes to the server. the problem is that their "publish changed files" option does not propagate deletions. to propagate deletions in expression web, you must use the "publish all files" function, which is much too slow when the remote copy is accessible over only ftp.
solution: web site publisher, the simplest and most genius program ever. it took me many hours to find it, which is why i felt the need to share it. you can configure it to scan only your hard drive for new/changed files and deletions, and then publish the changes since you last published to the ftp server. my solution won't work for *pre-compiled* asp.net web applications.
download it here: http://www.cryer.co.uk/downloads/websitepublisher/
you must enable the turbo optimization so that it does not scan the server. click "config", "optimisations", and then check "turbo".