Jag skulle sätta upp ett spår i SQL Server Profiler för att se vilka SET-alternativinställningar som anslutningen använder när man ansluter från .NET-kod, och vilka inställningar som används i SSMS. Med SET alternativinställningar menar jag
ARITHABORT
ANSI_NULLS
CONCAT_NULL_YIELDS_NULL
//etc
Ta en titt på MSDN för en tabell med alternativ
Jag har sett problemet tidigare där alternativen var olika (i så fall ARITHABORT
) och prestandaskillnaden var enorm.