You want to create a component host that can host more than one version of the same object.
Install all versions of the object into the GAC, and explicitly register each version at a different URI endpoint.
.NET Remoting does not include any intrinsic support for versioning. When a client creates a remote object, the component host automatically uses the version in the local directory or, in the case of a shared assembly, the latest version from the GAC. To support multiple versions, you have three choices:
Create separate component host applications. Each component host will have a different version of the remote object assembly and will register its version with a different URI. This ...