In many ways, the programming model has gone back to the model that dominated the mid1970s, when large mainframes served output to terminals connected directly to them. Users would submit jobs to the mainframe and get output to their terminals. So, what’s changed here? First, the terminal is a lot fancier—it’s a powerful PC running a browser that interprets HTML. The endpoint to which the browser connects is a Web server (or perhaps a server farm). Finally, the connection protocol used by the client and the server is indirect (and a request can quite literally cross the globe before the user sees a result).
"Microsoft ASP.NET 3.5 Step by Step" by George Shepherd, Microsoft Press 2008