Find this page online at: http://developers.evrsoft.com/article/web-development/asp/what-is-asp-net.shtml

What is ASP.NET?

By Mitchell Harper
Posted Wednesday, December 1, 2004

ASP.NET is not just the next version of ASP; it is the next era of web development. ASP.NET allows you to use a full featured programming language such as C# (pronounced C-Sharp) or VB.NET to build web applications easily.

--------------------------
ASP.NET still renders HTML
--------------------------
Unfortunately, the Internet still has bandwidth limitations and not every person is running the same web browser.

These issues make it necessary to stick with HTML as our mark-up language of choice. This means that web pages won't look quite as amazing as a fully fledged application running under Windows, but with a bit of skill and creative flair, you can make some rather amazing web applications with ASP.NET.

ASP.NET processes all code on the server (in a similar way to a normal application). When the ASP.NET code has been processed, the server returns the resultant HTML to the client. If the client supports JavaScript, then the server will use it to make the clients browser experience quicker and easier. Even with HTML being the limiting factor here, ASP.NET still manages to bring true OOP (Object Oriented Programming) to the Internet.

--------------------------
OOP on the Internet
--------------------------
Object Oriented Programming makes it possible to build extremely large applications, while still keeping your code clean and structured. Now with ASP.NET, we can do the same on the web. Traditional ASP uses HTML and VBScript (or Jscript) to process and render pages, but because VBScript is a scripting language, you were forced to write spaghetti code (VBScript was entwined in the HTML and ended up rather messy in larger applications).

ASP.NET separates code from display, and you can even have pages with no ASP.NET code in them at all. By adding references in your HTML (called controls), you can tell ASP.NET that you want a button here, some text there, and then in your code, you can manipulate what these controls look like, what they display, how big they are, etc.

Controls can do more than just display information. You can add events to controls, so that when a visitor clicks on a button, for example, ASP.NET executes a function of your choice.

--------------------------
Web Services
--------------------------
One great feature of ASP.NET are Web Services. Web services mean that you can literally have several pieces of your application on different servers all around the world, and the entire application will work perfectly and seamlessly. Web services can even work with normal .NET Windows applications.

For example: A lot of people would like to have a stock ticker on their web site, but not many people want to manually type in all changes to the prices. If one company (a stock broker) creates a web service and updates the stock prices periodically, then all of those people wanting the prices can use this web service to log in, run a function which grabs the current price for a chosen company, and return it. Web services can be used for so many things: news, currency exchange, login verification.. the ways in which they can be used are limited to your imagination!

--------------------------
Great XML Support
--------------------------
ASP.NET makes it simple to use XML for data storage, configuration and manipulation. The tools which are built into ASP.NET for working with XML are very easy to use. XML is excellent for storing information that rarely changes, because you can just cache that information in the computers memory after it has been initially extracted.

--------------------------
.NET is still in Beta development
--------------------------
Microsoft is still working on the entire .NET framework, however you can still download the Beta 2 version (which works just fine... I'm yet to come across any major bugs) from the ASP.NET homepage. The final release of .NET is scheduled for February 18th, 2002.

--------------------------
Complete Compatibility
--------------------------
One of the most important goals of .NET was to allow developers to write an ASP.NET application using multiple programming languages. As long as each ASP.NET page contains only one programming language, you can mix and match different pages using different languages and they will work together seamlessly. This means you can now have a team of developers with half programming in C#, and the other half in VB.NET, with no need to worry about language incompatibilities, etc.

A cool little side-affect of all this is that all the programming languages look very similar, and differ only by their language syntax.

Take the following code snippets for example. They both do exactly the same thing but the first is written in C#, and the second in VB.NET.

The C# version:
void Page_Load(Object S, EventArgs E) { myLabel.Text = "Hello world!!";

The VB.NET version:
Sub Page_Load(S As Object, E As EventArgs) myLabel.Text = "Hello world!!" End Sub

If you take either of the code examples shown above and add the following HTML to them, then they would both run perfectly inside of an ASP.NET page:

"Hello World" example!

--------------------------
Conclusion
--------------------------
Unfortunately, because ASP.NET is new, there is not as much material on the web for it as there is for traditional ASP. The best place to start learning ASP.NET (if you have previous programming experience) is (http://www.gotdotnet.com). As you start getting into ASP.NET, you will rely greatly on the MSDN library which includes the complete class library definitions amongst other things.

About the Author
Mitchell is the senior editor and founder of (http://www.devarticles.com). DevArticles.com provides its visitors with a wide range of development articles, interviews and code samples to help them succeed when trying to learn a new programming language, such as ASP, PHP or any of the .NET languages.