Well .asmx web services are basic SOAP services which transfer data objects in XML formats, on the other hand wcf services provide you custome binding. That means WCF can communicate in more than 10 ways atleast as 10 binding are provided by microsoft itself and you can create your own, like basicHttpBinding,BinaryBinding etc which transfer data object in different format or as you like kind of format