I have a project that loads multiple versions of the same assembly using either Assembly.Load or Assembly.LoadFile. I then use Assembly.CreateInstance to create a type from
Try Assembly.LoadFrom(path); which will resolve dependencies automatically.
Assembly.LoadFrom(path);