The .NET platform requires XML specifically XML Web Services to achieve its vision of applications communicating seamlessly across disparate networks, hardware, and software. XML Web Services enable applications to communicate and share data over the Internet, regardless of operating system or programming language. XML Web Services are not complex. In fact, it's their simplicity that makes them so powerful. They are no more than XML text messages passing back and forth between computers via the same network or across the Internet.
The key to making XML Web Services work is to agree to a simple data description format and that format is XML. Specifically, XML Web Services use XML for three things:
Wire format: SOAP. At the lowest level, systems need to speak the same language. In particular, communicating applications need to have a set of rules for how they are going to represent different data types (such as integers and arrays) and how they are going to represent commands (that is, what should be done with the data). Also, the applications need a way to extend this language if they have to. The Simple Object Access Protocol (SOAP), now on its way to becoming a W3C standard, is a common set of rules about how data and commands will be represented and extended.
Description: Web Services Description Language. Once applications have general rules for how they will represent data types and commands, they need a way to describe the specific data and commands they accept. It's not enough for an application to say that it accepts integers; somehow, there must be a way to deterministically say that, if you give it two integers, it will multiply them. The Web Services Description Language (WSDL), also working its way through W3C standardization, is an XML grammar that developers and development tools can use to represent the capabilities of an XML Web Service.
Discovery: UDDI. The final layer needed is a set of rules for how to locate a service's description where does a human or tool look by default to discover a service's capabilities? The Universal Description, Discovery, and Integration (UDDI) specification provides a set of rules so that a human or development tool can automatically discover a service's WSDL description.
Once these three layers are in place, a developer can easily find an XML Web Service, instantiate it as an object, integrate it into an application, and build enough infrastructure so that the resulting application can easily use this XML Web Service.