Just to add to this...
.NET is sometimes not very helpful about reporting missing dependancies, as you can see from the exception information Drstein99 posted. This seems to be even less helpful on Windows 98 machines, where it isn't possible to install Visual Studio to debug the software.
One option is to copy across some of the files from the .NET SDK, including cordbg.exe. This useful program is a fully-featured debugger which operates via a command line, and running your application through it will reveal a great deal more than the unhelpful exception dialog, and show you the whole exception.
If you copy your source code to the target machine it'll even give you a stack trace and show you just where the exception occured.