Does the BatchRequest SOAP directive help to improve efficiency when performing multiple operations - or does it help to reduce the load on the backend ?

Is it worth the effort to try to batch up a number of requests and process them all at once ?

If it is a good idea - what would be a good size for a Batch of Requests ? 2? 5? 10?