The .NET Remoting system enables you to access .NET Framework objects across the boundaries of AppDomains. It represents the actual implementation of a programming model designed for interprocess communication. Another facet of this model is .NET XML Web services. Although .NET XML Web services allow you to expose .NET Framework objects to any client that can use HTTP, .NET Remoting is optimized for .NET-to-.NET communication. Communication between the client and the remotable object can take place using SOAP or binary payloads transported over HTTP or TCP. .NET Remoting can transfer any serializable CLR types; it is not limited to XML Schema Definition (XSD) types or complex custom types as rendered by the .NET XML serializer.