There is nothing apparent in your code that should be causing this problem. I'm suspecting that you may have a corrupt .Net module. Can you make try running your executable on a different machine?
One last grasp at a straw, in the IDE, go to the menu Debug->Exceptions and enable breaking on thrown for all exceptions and then see what happens.