A Web service is a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format, specifically Web Service Definition Language (WSDL).
Web services fulfill a specific task or a set of tasks. A Web service is described using a standard, formal XML notion, that is called its service description. The service description provides all of the details necessary to interact with the service, including message formats (that detail the operations), transport protocols, and location.
The nature of the interface hides the implementation details of the service so that it can be used independently of the hardware or software platform on which it is implemented, and independently of the programming language in which it is written.
Web service based applications are, therefore, loosely coupled, component oriented, cross-technology implementations. Web services can be used alone, or in conjunction with other Web services, to carry out a complex aggregation or a business transaction.