When writing web services using .NET technology, you have a few options.
WCF: Tried and true, this is the successor to the original ASMX style web services. WCF has capabilities to create any type of service that can be accessed over a network, not just HTTP. WCF tends to be a bit configuration heavy requiring the use of a special tool in Visual Studio to set the myriad of options up. WCF generally uses the SOAP protocol. While it is possible to create a REST style web service using WCF, it is recommended by Microsoft to use Web API technology for REST style web services.
ASP.NET Web API: Web API allows you to create a REST style web service (no SOAP support) using an architecture that is very similar to MVC. You create a set of controllers and configure a routing system to create your operations and accept parameters. This tends to be simpler to setup and configure as it is very close to what you would do to configure an MVC web application.
There are also a couple of terms that need to be defined:
REST style web service: When you apply a REST architecture to a web service, this changes the way in which the client calls the operations of the web service. With a traditional web service, each call is represented by an HTTP GET verb with the URL that represents the name of the operation. With a REST style web service, the URL represents a set of operations that are differentiated by the use of 4 different HTTP verbs (GET, POST, PUT, and DELETE). I believe that the advantage of REST is that it is (allegedly) easier and makes more sense when called from client side code like JavaScript. Therefore, it can be consumed by a wider variety of devices. Also REST is necessary when implementing a data API using the OData protocol.
OData Protocol: OData is set of specifications for creating a data API. A data API is a service that exposes your database more directly over the web. Instead of abstract operations that perform CRUD operations on the callers behalf, the data API allows the consumer to perform the CRUD operations nearly directly. For example, each table could be represented as a URL and the user could query the table directly or even join together multiple tables. This has the effect of moving the business logic to the client.
Conclusions
Using OData to access a database over the internet sounds like it could be useful. And obviously you need to use REST in order to implement this. However, setting up an OData endpoint using Web API is anything but straight forward right now. In my opinion, this technology needs to mature a little longer for me to recommend using it.
If you're not going to use OData, then I just don't see the big advantage of using REST. It seems to me that it would be awkward to organize your operations into sets of four HTTP verbs. Another big disadvantage to using REST, is that there is no automatic proxy generation for consumers of REST style services. Web API does seem like it works well, but it requires a REST style architecture.
This is my bottom line: If you want to use a REST architecture, use Web API. If you want to use a SOAP architecture, then use WCF. At this time, I will continue to use SOAP and therefore WCF.