What are the differences between WCF and ASMX web services?

asmx, wcf, web-services

Solution

Keith Elder nicely compares ASMX to WCF here. Check it out.

Another comparison of ASMX and WCF can be found here - I don't 100% agree with all the points there, but it might give you an idea.

WCF is basically "ASMX on stereoids" - it can be all that ASMX could - plus a lot more!.

ASMX is:

- easy and simple to write and configure

- only available in IIS

- only callable from HTTP

WCF can be:

- hosted in IIS, a Windows Service, a Winforms application, a console app - you have total freedom

- used with HTTP (REST and SOAP), TCP/IP, MSMQ and many more protocols

In short: WCF is here to replace ASMX fully.

Check out the WCF Developer Center on MSDN.

Update: link seems to be dead - try this: What Is Windows Communication Foundation?

Problem

I am totally confused between WCF and ASMX web services. I have used a lot of web services in my earlier stage, and now there is this new thing introduced called WCF. I can still create WCF that function as a web service. I think there will be more stuff in WCF. What are the differences between WCF and Web services? When should each one be used?

Original source