If you write both the client and the server you can just turn your soap message into XML and send it as a single string or a bunch of lines. If you use a server from some other source your client will have to send exactly what the server expects, and that's a bit hard to predict from here. It may be better to use some of the HTTP-aware classes instead of socket in the client.
What's your comfort level with sockets? Have you done much with them? If not, Sun's All About Sockets is a good starting point.
A good question is never answered. It is not a bolt to be tightened into place but a seed to be planted and to bear more seed toward the hope of greening the landscape of the idea. John Ciardi
I’ve looked at a lot of different solutions, and in my humble opinion Aspose is the way to go. Here’s the link: http://aspose.com