I'm about to start development of client-side application (C# using .NET 4.0) that connects to SharePoint. Mainly to download/upload documents.

I've found out that there are several options:

  1. using Microsoft.Sharepoint.dll (sdk ?)
  2. using Microsoft SharePoint Web Services
  3. Using CSOM
  4. ..?

1) I guess that the first option requires me to run code at the server, so for a client-side application this cannot be used.

2) Can I use the SP Web Services for both SP2010 and SP2013 or do you need to use a different library/sdk?/... for each version of SharePoint that you want to target?

3) If I want to target both SP2010 and SP2013, can I just use this COM from SP2010 to also access SP2010: http://msdn.microsoft.com/en-us/library/ee537247(v=office.14).aspx or do you need to create an application for SP2010 using a specific COM library and another CSOM library for SP2013 ?

What are the advantages of using CSOM over Web Services ? What are the limitations/differences between both? For a client-side application that just needs to connect to a SharePoint server, what would be preferred ?

Thanks in advance for your advice.

  • Check out this tool for CSOM spservices.codeplex.com Commented Apr 19, 2013 at 9:13
  • jquery+that tool is for webdev. I'm doing a C# desktop application not webdev/asp.net
    – juFo
    Commented Apr 19, 2013 at 9:37
  • You know client-side means HTML, Javascript, CSS, right? Commented Apr 19, 2013 at 12:34
  • 2
    No it doesn't. You can build rich client apps that use C# and XAML or ::bleh:: WinForms. Client simply means not executed on the server, it does not mean you need to use web development technologies at all. Commented Apr 19, 2013 at 13:06

2 Answers 2


it all depends on your skills, if you are a good c# developer, but not javascript developer, I would do it with the client api

this api is usually in Microsoft.Sharepoint.Client.dll starter link: http://msdn.microsoft.com/en-us/library/ee536158(v=office.14).aspx

if you are good with javascript, CSOM its a good option as well.

The difference between them its that the sharepoint.client.dll has more feature than csom or webservices, depending exactly on what you want to do, you might not find a method in csom or in the webservice, but surely it will be on the client dll.

Both dlls are different for sp2010 and sp 2013, probably most methods will be the same, but the assembly version you have to reference is still different.


You can connect a document library via WEBDAV for uploading and downloading files, just use the URL of the library.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.