you cant use DSN For SqlConnections (not to my knowledge anyways) but i think the reason SQL works but not ODBC is because of your ODBC Driver versions. We had the same symptoms a while back. The resolution was to get the latest ODBC Drivers and ensure the same assemblies were located on both our servers and DEV machines (because when we debugged them locally it worked fine, but on the server it would not).

I definately would look into making certain you have the correct (and latest) ODBC drivers on all your machines. And ensure your referencing these properly in your application because only ODBC will work with a DSN.

hth,
mcm