A batch itself is not much use, you'd need to use the copy or xcopy command to actually do the backup/sync.
However there are known problems with copy and xcopy (failing on long file paths, locked files etc) so instead I would advise using Robocopy which is part of the Windows 2003 resource kit tools download.
Then you call it from a batch file. As an example to do a standard backup I use:
robocopy "C:\Documents and Settings" "Y:\Backups\EEEPC900HA\Documents and Settings" /s /e /zb /copyall /log:%logfile% /tee /ndl /r:0
This command copies all files and folders that are new or have changed from "C:\Documents and Settings" to my external backup drive. Locked files will be skipped and it will not re-try to speed things up. Long paths/filenames are handled correctly.
Robocopy can do both a standard backup (one way) or a "Sync" where both folders are kept identical. You can also exclude from the backup certain files and folders using wildcards.
The only thing Robocopy doesn't really give you is shadow copying of locked files (it just skips locked files). But only a few tools do, and it requires the shadow copy service to be running.
My backup process is simply a shortcut on the desktop calling the Robocopy batch file. I just plug in my drive and double-click the shortcut. Backing up 40 GB of files takes a while the first time, but subsequently only new/changed files are copied so it only takes on average about 30 seconds.