Do you even have the .NET framework installed on your XP machine?.. You know .NET framework by default is not installed on XP.
Code:
.NET Framework 1.1: Windows Server 2003
.NET Framework 2.0: Windows Server 2003 R2
.NET Framework 3.0: Windows Vista, Windows Server 2008
.NET Framework 3.5 SP1: Windows 7, Windows Server 2008 R2
.NET Framework 4.0: Windows 8
.NET Framework 4.5: Windows 8, Windows Server 2012
.NET Compact Framework 1.0 (SP2): Windows Mobile 5.0
.NET Compact Framework 2.0: Windows Mobile 6.0
Mono 1.1.13.6: Ubuntu Dapper (6.06 LTS)
Mono 1.2.6: Ubuntu Hardy (8.04 LTS)
Mono 2.4.2.3: Ubuntu Karmic (9.10)
Mono 2.4 branch snapshot: Ubuntu Lucid (10.04 LTS)
Mono 2.6.7: Ubuntu Maverick (10.10), Ubuntu Natty (11.04)
Just because you're compiling with 2.0 (and who knows why you're doing that, I'm not sure), doesn't mean it will work on all operating systems by default. Were you expecting to support Windows Server 2003 R2 by default? lol I don't understand. Anybody who thinks that 2.0 is the best way to go for malware I laugh at inside personally for this reason. Nobody is going to go out and install 2.0, even though it's backwards compatible (supposed to be) from all higher framework versions. So really anybody on Windows is going to start out with 3.0 minimum, on a personal PC anyways.
The only difference between 2.0 and 3.0 is that you don't end up with using obsolete and junk methods by using 3.0 over 2.0. And anything below 3.5 doesn't have LINQ.
This whole "if I use 2.0 for malware, it will be better" is an idea that was brought up by skids that don't realize this, and it spread like wildfire as a very poor misconception for the reasons I've given. My advice for you is to not believe whoever told you this, and that's the bare truth.
Other than that, Coder-san at the time he posted, would have also been correct with the information he had seen from you. We haven't seen your code, so really anybody here is going to just have to guess. The only reason I would now say it's probably not the case, is because you said you were getting the error "this program is not a valid. Win 32 application", after he posted. No exception raises that error message.
:ok: