Just came across this article about the lack of a linker in .NET. Interesting point, but I think that we have been trying to get away from statically linked binaries for some time now. VB was the first step, as it too had a large runtime prerequisite, and if you look at the situation with that now, must people do have the correct version installed because that tool has matured to a great degree and the runtime is stable. I think that there is a suggestion in the article that CLR releases are implicitly tied to releases of Visual Studio and while that may be true in these early days of .NET, I really expect that to change over time.