As you can guess by looking at the image above, it is a synchronous process: After sending the request to the server, the client is left to wait, doing nothing until the response is available.
Although this operation is a classic in web systems, the HTTP protocol itself can support the needs for asynchrony of modern applications, owing to the techniques generally known as AJAX (Asynchronous JavaScript And XML).
Using AJAX techniques, the exchange of information between the client and the server can be done without leaving the current page. At any given moment, the client may initiate a connection to the server using JavaScript, request a resource and process it (for example, updating part of the page).
What is truly advantageous and has contributed to the emergence of very dynamic and interactive services, such as Facebook or Gmail, is that these operations are carried out asynchronously, that is, the user may keep using the system while the latter communicates with the server in the background to send or receive information.