Many books have been written to describe all that .NET and ASP.NET supply. So it would be hard to some it up in one post. However C++ and Python (IronPython to be exact) can also use .Net's Library. However it feels more smooth using C# with .NET with the way Microsoft designed it.
What It gives, like I said would be hard to some up, however I can say it is an extremely large library which supplies objects for a large amount of things. I think the only way to know what it can do and what it is good for, is to become familiar with it, just like any other languages.
For me to create a business app, which does POs (purchase orders), invoicing, customer and supplier accounts for Net30 terms and maintain A/R and A/P. I can do this with .NET in probably a quarter of the time (if not less) then it would take me with C++. So the real quality is speed to produce crap, people in the masses will buy because they absolutely "need it".
But in the past months I've been learning C++, I've grown to appreciate it for game stuff and other odds and ends.
You could use VB with .NET as well and actually; Its not very different then C# in how it works. The syntax is different in a sense as it looks different. But they are practically the same language. The only real reason i would never use VB is because it is too verbose and it is not case sensitive.