We produce a number of applications that share assemblies. Since memory or disk space is not a problem, we use private assemblies by duplicating the shared assemblies into each app's local folder. This avoids the issues caused by putting them into the GAC. I hear that strong names are a real good thing that is required if we share assemblies in the GAC.
Is there a good reason to use strong names for private assemblies?
BTW: Here is an excellent reference on assemblies: link text