ASP.NET is Microsoft's web application framework used to build dynamic websites, web applications and web services. It utilizes the underlying .NET Common Language Runtime (CLR) and can be programmed using any .NET compliant language like C# or VB.NET. The CLR provides a managed execution environment and provides services like memory management, thread management, security and exception handling.
There are two programming models for building ASP.NET applications: ASP.NET Web Forms and ASP.NET MVC. Web Forms is an event-driven model that provides functionalities like a rich suite of server-side controls and rich data binding out-of-the-box. Web Forms makes managing state (over stateless HTTP) easy and straightforward. Web forms programming model is mostly used for line-of-business applications.
ASP.NET MVC is a light-weight request-driven model that implements the familiar model-view-controller architectural pattern. Building an app using ASP.NET MVC requires more coding, but it also gets less in the way, so is ideal for large and complex applications, where developers need more control. It employs the Front Controller pattern as opposed to the Page Controller used by Web Forms. Other features of ASP.NET MVC include support for test-driven-development (TDD) and URL rewriting. The URL rewriting feature enables creating URLs that are SEO enabled and useful for REST-style addressing.
ASP.NET ships with an AJAX library, which provides a richer and more responsive user interface to the end-users. AJAX features can be added to web forms applications using ASP.NET AJAX, which is compatible with all popular browsers. Use of AJAX can result in improved efficiencies as a significant part of page processing can be performed in the browser. A rich array of controls is available as part of ASP.NET AJAX Control Toolkit, which is an open-source project built on top of the ASP.NET AJAX framework. Another AJAX library available with Visual Studio is jQuery - it can be used to create client-side interactivity without using server controls.
ASP.NET Web Services allows developers to expose and consume web services with ease. Most of the plumbing is done by the ASP.NET framework, so the developer can focus on application logic rather than worry about the nitty-gritty of the SOAP protocol. Serialization of .NET types to XML is performed by the framework classes. ASP.NET AJAX and jQuery based applications can consume web services from the client-side.
If you are looking to create rich, interactive applications or services with ASP.NET, QBurst is company to go to.We can help you choose between ASP.NET web forms and MVC and between ASP.NET AJAX and jQuery. And we have experience with C#, managed C++ and VB.NET.