For a start you can code up your own classes which you can then use in Windows Applications if required. In an enterprise environment this sort of thing is a godsend. Try having to create your business rules over and over every time you begin a new application. i.e. the .NET framework is the same (well, similar) if you are writing a windows app or a web app.
ASP.net has a great web forms framework. It's like templating, on roids. Just fantastic.
You can use a lot of languages to create ASP.NET web controls - c++, c#, vb.net, COBOL. It's all possible. Maybe even PHP one day! In an enterprise, where you may have to utilise staff members with a skillset which specialises in languages other than c# or vb.net, this is also useful. I can write part of my ASP.net application in VB.net and it will interface just nicely with part of the application that was written by someone else in another language.
Dev environments for ASP.net are better. If you can afford it, Visual Studio .NET is the dogs balls. Real top class tuff. Even the free Microsoft Web Matrix is supposedly pretty good (better than anything you can get free for developing PHP). The dev environment allows you to debug properly (stepping through code and viewing variable values etc) and it has intellisense, of course - always useful.