public abstract class MarshalByRefObject
Enables access to objects across application domain boundaries in implementations that support remoting.
[Note: An application domain is a partition in an OS process where one or more applications reside. Objects in the same application domain communicate directly. Objects that reside in different application domains communicate either by transporting copies of objects across application domain boundaries, or by exchanging messages via proxy.]
MarshalByRefObject is the base class for objects that communicate across application domain boundaries by exchanging messages via a proxy. Objects that do not inherit from MarshalByRefObject are implicitly marshal by value. When a remote application references a marshal by value object, a copy of the object is passed across application domain boundaries.