Think of it this way:

Even though .Net is built upon preexisting languages, its still a new language set in of itself.

If I made a new language (Call it LanguageX), and charged people $500 for the compilers and tutorial information, noone would want to use it. If you release that kind of stuff for free, people will use it.

Here is where marketing strategy comes in handy. Take Linux for example. (Generally) Its a free download off the 'net. The catch: You have to download about 2GB of data (impossible for 56k'ers) and burn it onto your own CD's, and print out the documentation yourself.

Meanwhile, a boxed copy of linux, full with CD's, documentation, and a pretty box, can be bought in a store for about $60. That $60 bought your convenience, as well as saved you downloading 2GB, burning 3 CD's, and Printing 600 pages.

Microsoft charges $500 for convenience. However, its well worth it. I have a copy of Visual C++ 6.0 (2nd hand). Beforehand I was doing it the old fashioned way with Borland:

\>edit blahblah.cpp
<type/modify code here>
File->exit
\>cc blahblah.cpp
-ERROR at line X-
\>edit blahblah.cpp
scroll to line X
<Correct code here>
File->Exit
\>cc blahblah.cpp

With Visual C++, that long process became:

Double-click blahblah.cpp
<type/modify code here>
Tools->Make blahblah.exe
-ERROR at line X-
Scroll to line X, correct code
Tools->Make blahblah.exe

Best $20 i ever spent. I thank my friend who sold it to me for upgrading to .NET.


I suppose you can also look at it this way. They gave you the compilers and doc's. Now code yourself an IDE, and save the $500!