Notes
If Future Annotation is not used in a web service callout, the thread will wait until the response comes and other processes will not be executed.
Batch Apex is used to separate tasks that are going to handle more records in background process. Batch Apex also runs asynchronously.