CRM SDK 4.0.12 that was released as part of the May 2010 Service Update includes some wonderful tools to simplify CRM development. One of the great benefits with this new SDK is the ability to switch your application from CRM on-premises to Online or partner-hosted with just one line of configuration file change and no re-compilation. The new SDK includes a code-gen utility that generates classes so that you can have strongly typed objects with relationship mapping in C#. As a result, developers get rich intellisense support within Visual Studio even for your custom entities. With this new SDK you can now use Language INtegrated Queries (LINQ) to write your queries against CRM. LINQ enables you to easily write complex CRM queries in an easier SQL-like way and as a result, the amount of CRM code a developer writes is largely reduced.