In simple terms, Web services are software components that can be accessed and executed remotely via a network by a client application using standard protocols such as Hypertext Transfer Protocol (HTTP) and Simple Object Access Protocol (SOAP), as shown in the following illustration.
What does this mean in English? You can create a class, make it available on the Internet, and have someone on the other side of the world execute the methods on that class as if the methods were on their local machine. Likewise, Web services enable you to execute other developers' classes from anywhere around the world as long as they're hosted on the Internet. You can also place the class on a server within your LAN and execute it exactly the same way, but that simply isn't as exciting, so I'll stick to Web services' Internet capabilities in this chapter.
Another cool feature of Web services is that they aren't just a .NET thing. You can access Web services written in any computer language on any platform so long as they conform to a set of HTTP and SOAP standards to communicate. This feature allows for simple integration of diverse legacy systems and new .NET applications.
For those of you who have been coding for a few years, Web services are a much improved substitute for DCOM, COBRA, and the like.