Batch files have the same benefit as any other scripting tool, they make doing repetitive (sometimes complex, sometimes boring) tasks simple.
I wrote a very simple batch script a few months ago, because I wanted a set of commands to run every evening at 6 PM. So, I created this script which uses mercurial commands to check for changes (the owner of a site I maintain adds and removes stuff with FTP). Then commits any changes, and pushes them to the origin (my server).
hg commit -m "Daily update from Prod"
Then I setup a scheduled task to run this script daily. This happens to be the first batch script I've written in years, however, due to me moving to Mac at my latest job where I'm doing development.
However, I use shell scripts (same type of thing on a different OS) daily. The one I use most ensures that I have a network drive mounted, logs me into our source code repository (prompting for a password, of course) and fires of the build script. All in all, it would take me 3 minutes to enter the commands to do this myself, but when I did, I regularly forgot to check that my drive was mounted (mapped), and this caused a 10 to 20 minute delay... The script doesn't forget.
I used to be a system administrator for a community college and used batch scripts all the time, mostly, as you mentioned, for automation. When I started there, we had to visit each machine to manually update the antivirus and run a scan. I created a batch script that would copy the update from a specific location on our network, install it, and start a scan. Then at each machine in a group, throw my floppy disk in the drive, hit Window-R (to open the run dialog) and type a:\up.bat... After I got a few started, I'd kick back and read until they were finished.
I created another script to get new machines (or repurposed old machines) up and running with our standard setup before we bought imaging software. What was previously a tedious process of insert this disc, double click some stuff, click next a few times, wait..., click next some more, switch discs, do the same thing... Turned into insert disc, insert floppy... run command. switch discs when prompted... When the network was more reliable, that was changed to just inserting the floppy and running the command, it downloaded the install files from a network drive for me.