CAML | LINQ |
If there is any issue in query, we will come to know at runtime. So, until we run the query, we will not know the issue in the query | If there is any issue in the query, we will come to know at compile time only. So, we don’t need to wait till we run the query. |
It is faster than LINQ. | LINQ queries are first translated to CAML queries, adding one step more before query execution. So, it is comparatively slower than CAML. |
Comparatively it is difficult to create a CAML query when using single or multiple lists. | It provides strongly typed objects to design query so it is comparatively easier to form a query using single or multiple lists. |
The results are placed in SPListItem Collection object, which is not strongly typed object. | The results are strongly typed objects so Items and Fields provide compile time checking. |