I know I'm late to the game, but the virtual machine that was running my copy of .NET Framework 4.0 Beta 1 was "locked down" for several months because my previous hosting laptop got brutalised by Dell technicians last year. It was only recently did I manage to revive the virtual machine to carry out a complete uninstall of Beta 1 to make way for the younger, slimmer, sexier sister of Beta 2. But like any jealous sister, it was made clear to me that attempts to get rid of Beta 1 were just gonna be extremely difficult tasks:
Microsoft Common Language Runtime native compiler has stopped working
In reading around pages of dicussions from developers experiencing similar pains in their to ditching Beta 1, it appeared I committed great sin in the eyes of the bible of pre-release software procedures - I picked what to uninstall first by my own unwise uneducated judgement. Silly me forgot the track record of past .NET Framework betas having extremely horrid uninstall experiences; there is a particular order in which the various software packages must be uninstalled.
So I got screwed big time. Not only couldn't I remove, neither could I repair the installation like others suggested as the solution.
Repair did not succeed. Fatal error during installation.
Thankfully, I found a discussion at Microsoft Connect that details what's the problem in my case: I uninstalled Microsoft Visual C++ 2010 Beta 1 x86 Runtime 10.0.20506 before uninstalling .NET Framework 4.0 itself. .NET Framework relies on this package to provide lower-level functionality. This has to be reinstalled using the following method (launching the .msi alone is not effective):
Navigate to <VS2010 beta 1 DVD drive>:\WCU\VCRuntimes\x86
Key in msiexec /i vc_runtime_x86.msi ADDEPLOY=1
This will allow the separate installtion of the C++ runtime binaries, and allow .NET Framework installation to carry out the Remove process.
Adios! And good riddance.