Rest API Vs SOAP API in Salesforce
SOAP API and REST API are two commonly used API's to expose your data from force.com platform to other platforms(JAVA ,.NET ,etc) or to allow external application to invoke Apex methods.
This is an interesting blog and may answer your question very well.
API described in Salesforce documentation above.
1)Supports data in the form of XML only 2)Requires WSDL for the integration 3)Use SOAP API in any language that supports Web services. 4)It is a standard protocol and needs more bandwidth and resources.
REST API 1)Supports both XML and JSON format 2)Preferred for mobile and web apps since JSON being Lighter the app runs smoother and faster 3)It is more of an architectural system and requires less bandwidth and resources.
You can also use Apex SOAP and REST Web services to expose data from platform or allow an external application to invoke Apex methods.
You may want to refer to the Apex guide to learn more about this.
I am researching on the same topic. Looking at this video - https://www.youtube.com/watch?v=dYT3XR8pRgw, I understand that SOAP should be used when the requests are made programmatically (server side). Should REST be used only in cases where the request are from either browser or mobile devices? Our requirement is to load data from salesforce tables into our application. It would be nice to have your thoughts on this.
REST can be used to load data too.Like if you are extracting data from SFDC and if there are huge data then i would suggest you too use bulk API .http://www.salesforce.com/us/developer/docs/api_asynch/ Bulk API in sfdc is based on REST principles.