Controls are the building blocks of a graphical user interface (GUI). Visual
Studio .NET allows you to work with the following types of controls on Web Forms:

HTML ControlsTraditional HTML elements displayed as controls.

HTML Server ControlsHTML elements that can be programmed on
the server, marked with the runat="server" attribute.

Web Server ControlsThese new controls are specifically designed
to integrate well with the ASP.NET programming model. They support data
binding and other advanced capabilities and might render as multiple HTML
controls.

WebUser Controls and Web Custom ControlsThese are
two types of controls that you can create yourself. You can learn more about
these controls in Chapter 8, "Creating and Managing Components and
.NET Assemblies."

HTML Controls

HTML controls represent common HTML elements. You can access all the commonly
used HTML controls through the HTML tab in the Visual Studio .NET Toolbox. You
can drag these controls to a Web Form and set their properties in the Properties
window.

Controls from the HTML tab of the Toolbox such as Text Field and Label are
converted to their appropriate HTML equivalent such as
<INPUT> and <DIV> elements,
respectively, in the source code of the ASPX file. All the HTML controls are
automatically placed inside an HTML <FORM> element. These
controls are saved exactly as they'll appear when they're sent to the
user's browser.

You probably won't make much use of HTML controls on ASP.NET Web forms.
That's because there's no good way to programmatically interact with
these controls from your Visual Basic .NET controls. ASP.NET provides two other
sets of controls that are much better suited for server-side programming: HTML
Server controls and Web Server controls.