java
html
php
iphone
css
xml
ajax
python
mysql
android
objective-c
multithreading
eclipse
flash
perl
algorithm
cocoa
mvc
api
This is a known problem on x64 systems:
This is a known issue on 64-bit OS platform. The reason is that the 64bit OS core does not allow user mode exception through kernal mode stacks. The exception is swallowed by OS sliently. That happens in FormLoad handler, because it is called in an OS callback. 32bits OS doesn't do this, so it doesn't repro there.
The OS team is investigating related issues. In the mean time, you do have to work around this issue. Turning on "Stop on first chance exception" will make the debugger to stop in this scenario. But it does make the debugger to stop very often, so you might want to do this only when you find a problem.
The linked bug report was last updated February 2008, and doesn't indicate what's happened since then.
I can reproduce most poster's behavior on my 32-bit system here, and I can reproduce the OP's behavior on my 64-bit (Vista SP2, 3.5SP1 Framework) work PC.
Is this only if the form is the target of Application.Run? I have the need to through exceptions in form load events and I haven't run into the issue you are speaking of. It sounds like it could be circumstantial to the conditions of the form invocation.
Application.Run
I think you've surrounded your Application.Run with a try..catch block. You should show the entire code of your application.
try..catch
edit: even with the code provided by the op, I still think theres a try..catch block he's not showing (or an unhandled exception handler), because it should (and does) crash when the form loads.