AJAX (Asynchronous Javascript and XML) is a technique for creating dynamic Web pages. AJAX is used to change elements of a Web page without reloading the whole page from the server, thus increasing performance and responsiveness. It was first named in 2005 and now is a relatively mature technology. All major browsers support it, popular sites use it heavily, and many Web development tools and languages build upon it. For more background about AJAX, see this Wikipedia article.
This page demonstrates basic AJAX functionality. The most popular way to use AJAX is via Javascript that is executed by user actions or a timer. The Javascript makes a request to the Web server, and when a response is received, HTML elements on the page are updated with the new information. Since this occurs asynchronously (in other words, is non-blocking), the user can interact with the Web page while AJAX request/response communication is happening, and so perceives that the page is more responsive.
Assume that you're building a Web page that displays a counter. This counter could show the number of messages the user has, time spent on the site, or similar information. You want the counter to get new information from the server without reloading the rest of the page.
Here are a counter and a button that uses AJAX to call a server-side method to update the counter's value:
Click on the button to see AJAX in action.