Difference between REST and CSOM
If I wanted to create a list with a few custom fields, I could do that in one round trip to the server if using CSOM, but with REST it would be 1 call for the creation of the list and (n) calls for each field I want to create.
The REST API doesn't have support for working with managed metadata taxonomies and I also can't interact with workflows via REST. The CSOM has coverage for both of these things, including a very robust Workflow Services CSOM API.
Data access using REST is very easy, but in CSOM we have to write CAML Queries.
With the REST API, I can use any of the open source & community libraries available. But in CSOM we can not use open source.
With the REST API, I can easily test queries in the browser & using Fiddler making me more productive. With CSOM, I must write something and run it in SharePoint / console app.