Briefly explain what user controls are and what server controls are and the differences among the two.
An ASP.NET control (sometimes known as a server control) is a server-side component that is shipped with .NET Framework. A server control is a compiled DLL file and cannot be edited. It can, though, be manipulated through its public properties at design-time or runtime. It is possible to build a custom server control (sometimes called a custom control or composite control). (We will build these in part 2 of this article.)
In contrast, a user control will have of previously built server controls (called constituent controls when used within a user control). It has an interface that can be completely edited and altered. It can be manipulated at design-time and runtime via properties that you are responsible for creating. While there will be a multitude of controls for each possible function built by third-party vendors for ASP.NET, they will exist in the form of compiled server controls, as mentioned above. Custom server controls may be the .NET answer to ActiveX Web controls.