Before we go on, I just wanna remind you that ASP.NET is a server side technology. The output from ASP.NET is still HTML tags/elements and thefore interpreted by browsers as it is w/ other server side software. And browsers still post the same type of data structure back to the webserver irrespective of back-end technology.

So, you can still use client script to make changes to the html elements on the client side because they are the same as before ASP.NET came along.

In ASP.NET case, the names of the controls are a little bit wierd but you can still get them via DOM as usual from client script.

There is no requirement put forth by ASP.NET that you must POSTBACK in order to do everything. You postback only if you need to get the server to process the data as it was w/ ASP.

ASP.NET is way faster because of few things.

First of all, you're plugging into the core FRAMEWORK (the same FW that you would be using if you were developing Windows App.).

It is now compiled instead of intepreted and we know that is definitely a benefit.

ASP.NET implements OOP which allows you to design a more efficient logic. Again, a plus.

The only thing that is arguable is the fact that all server controls requires object instantiation in order for the control to be rendered. This is a little overhead but w/ the more powerful servers available nowadays, this evens out.

My two cents,