Ajax allows web pages to be updated asynchronously by exchanging data with a server in the background without reloading the entire page. It uses JavaScript and XMLHttpRequest objects to retrieve data from the server and update portions of the page without interfering with its display or behavior. The XMLHttpRequest object's open() and send() methods are used to send requests to the server and retrieve new data, which can then update parts of the web page asynchronously.