In SharePoint 2010 there are more ways to deploy custom code than in its predecessors, the reason is the introduction of the Sandboxed solutions. There are basically now three different ways to deploy custom assemblies:
Full trust solutions, aka Farm solutions - The assemblies are registered in the GAC and runs under full trust Partial trust solutions, aka Web Application solutions - The assemblies are deployed to the bin folder of a specific Web Application Sandboxed solutions, aka User code solutions - The assemblies (solutions) are deployed to the Site Collection gallery These are the basic variants of how to deploy custom assemblies. There are actually a few variants of them, but more about them later. So which one should I use and when? Let’s go through them all and look at the pros and cons.