Is it better to use System.Assembly.Load or to load the assembly directly into the AppDomain using System.AppDomain.CurrentDomain.CreateInstanceFromAndUnwrap? I am specifically interested in calling different versions of the same assembly running in the same process. I think with CreateInstanceFromAndUnwrap your assembly must have the [serializable] attribute, but why is that?Is it better to use System.Assembly.Load or to