Colloquially, "immediate" has a lower bar than "instantaneous." People have different expectations for the term "immediate," depending on the context. For example, it's not unreasonable to say that you left a message for the florist, and she called you back immediately. Similarly, it's possible to say that you hit the power button on the remote, and the TV powered down immediately. The immediacy in these two contexts has different timings, but both are perfectly accurate in what they're describing.
As far as human-computer interaction is concerned, research points to between 500 ms and 1 second as the maximum acceptable response time for immediate system responses (see Figure 2). This is the optimal target for the system to signal or acknowledge to the user that his or her command or instruction has been received.
Figure 2 Optimal timing between the moment a user issues a command and the moment the UI acknowledges that the command has been received.
Rule: Any process perceived by the user as being easily performed (page down, zoom in/out, maximize/minimize window, etc.) must be executed and completed in a time period between 500 ms and 1 second.
Case study: A search returns a total of 10,000 results and the first 10 are displayed to the user. The user clicks a button to view the next 10 results. The second set of results is displayed in 2 seconds.
Verdict: Because the software indicates that the search has been completed, and suggests that clicking the button merely brings the next set of results into view, the response time must be reduced by more than half.
Remember: A good way to think of this principle is to regard it as the reflexive "knee-jerk response" from the system. If the information requested by the user is perceived to be "ready" (for example, text on a web page that falls outside of the viewable space on a browser, an image whose dimensions exceed the default display mode, or a viewable subset of a list of results), the system response time should be immediate.