You've probably already heard quite a bit of hype about Web services in conjunction with .NET. In fact, Microsoft has gone so far as to sometimes describe the .NET Framework as "an XML Web services platform that will enable developers to create programs that transcend device boundaries and fully harness the connectivity of the Internet." You might also run across a lot of complex and confusing explanations of the architecture of these Web services. But at their most basic level, Web services are simple: They are a means for interacting with objects over the Internet.
Seen in that light, Web services are part of a natural progression:
Object-oriented languages such as C++ and C# enable interaction between two objects within the same application.
Protocols such as COM enable interaction between two objects on the same computer, but in different applications.
Protocols such as DCOM enable interaction between two objects on different computers, but the same local network.
Web services enable interaction between two objects on different computers, even if they're only connected by the Internet.
In this chapter, I'll introduce you to Web services as they exist in the .NET Framework. You'll see how to build and use Web services in your .NET applications, and you'll learn about the major protocols that are used when you communicate with a Web service.