Why would you want to do that?
* installing ONE application is always simpler than installing many.
* most computers in a work or academic setting do not have full admin rights making the installation of a framework impossible. This solves it by bypassing all these difficult authorisation settings. One executeble allways runs!
* sometimes computers do not have access to the internet to download prerequisites such as the a .net framework.
* no GAC (global assembly cache)
* optimize your installation proces!
* easy setup, easy deployment, easy use!
What is the risk?
* None, Microsoft uses the principles of the technology behind .NET FuZe themselves for many applications. In fact, EVERY windows application is - once it has been loaded in the Windows operating system, a single process. Just take a look at the Windows Task Manager. DLL's (Dynamic Link Libraries) are designed to run in the same memoryspace as the calling Executable. That is also the case for every framework library, weather it is in the framework directory or in the GAC.