There are a couple of things I see wrong with this:
- File bloat. The demo application on the web site that simplys displays Hello World was 7 MB, imagine if you reference a lot of assemblies. Then add a few applications. A small 20 MB install then looks rather tempting.
- Legal implications. I'm not sure if Microsoft would allow you to redistribute the .NET Framework statically linked within your application.
- Security and Bugs. Any security patches or service packs required for the .NET will require you to redistribute all your applications that have been statically linked.
- All operating systems in the future will come with a .NET Framework version installed, so it won't be an issue about installing .NET Framework.
I think the legal implications must have been handled by now -- this product has been out a while. Security is an issue, but it has always been the same with all statically linked applications.
The fact is, one barrier to .NET adoption is installation of the framework! Most reasons for not wanting to install are stupid, but you cannot change that. And Microsoft has not produced the best possible installers -- sometimes .NET gets in a broken state where you can no longer update it. So there are real advantages to a static .NET linker.