Use HTML server controls if:
! You prefer an HTML-like object model. HTML server controls have almost
the same HTML as the basic HTML controls. HTML server controls also
have server-side functionality just like Web server controls.
! You are working with existing HTML pages and you want to quickly add
Web Form functionality. Because HTML server controls map exactly to
HTML elements, you do not need to replace controls and risk substitution
errors or page formatting problems.
! The control needs to run both client-side and server-side script. You can
write a client-side script and target a regular HTML control because the
controls are visible in the client. At the same time, you can have server-side
code because it is also a sever control.
! Bandwidth is limited and you need to do a large amount of client side
processing to reduce bandwidth usage.
Use Web server controls if:
! You prefer a Visual Basic-like programming model. You will be able to use
object-oriented programming, identify controls by their ID attribute, and
easily separate the page logic from the UI. With Web server controls, you
can also create applications with nested controls and catch events at the
container level.
! You are creating a Web page that might be viewed by a variety of browsers.
Because the logic inside the Web server controls is able to create HTML
that is tailored to the features that are available in the client’s browser, you
can write for the latest browsers without worrying about browser errors
keeping your less up-to-date users from accessing all of the Web page
functions.
! You need specific functionality, such as a calendar or advertisement, or ad
rotator, that is available only as a Web server control.
! Your bandwidth is not limited and the request-response cycles of Web
server controls will not cause bandwidth problems.