An XML Web service is a unit of application logic providing data and services to other applications. Applications access XML Web services via ubiquitous Web protocols and data formats such as HTTP, XML, and SOAP, with no need to worry about how each XML Web service is implemented. XML Web services combine the best aspects of component-based development and the Web. They are a cornerstone of the Microsoft .NET programming model.
XML Web services can be accessed by any language, using any component model, running on any operating system. They utilize HTTP as the underlying transport, which allows function requests to pass through corporate firewalls. XML is used to format the input and output parameters of the request, so the request is not tied to any particular component technology or object calling convention. The Microsoft .NET Framework makes it easy to write components that communicate using HTTP GET, HTTP POST, and SOAP.