You can create .NET web services without using SOAP using GET and POST. But
SOAP is only neccessary when you are trying to pass in parameters to a web
service that are complex data types. Without SOAP you cannot represent data
type objects (such as an XMLElement data type) because you cannot specify
that in a URL. I understand that REST cannot handle complex data types. So
if you are building web services that requires complex data types to be passed
in, then SOAP is the better/required solution.