At the point in your batch file where you want execution to delay before continuing simply enter:
ping localhost -n 60
This will result in the system pinging the localhost PC for a count of 60 resulting in roughly a 60 second delay in your Batch files execution before continuing. The end result is a successful execution delay. You can modify the count number to anything you need to create the length of delay required.
For me, this was perfect to create a delay for 60 seconds before the batch file attempted to restart the service. Since implementing this line in the the batch file it hasn't failed once to properly stop and restart the service.
It's a simple little trick that really helps customize your batch files. I hope you found this tip helpful. If you did, let me know, leave a comment or give me a shout on Twitter. @wjgtech.