WebApi allows to create services that can be exposed over HTTP rather than through a formal service such as WCF or SOAP.
Another difference is in the way how WebApi uses Http protocol and makes it truly First class Http citizen.
UPDATE: The ASP.NET Core, Web API has been integrated into MVC project type. The ApiController
class is consolidated into the Controller
class. More at: https://wildermuth.com/2016/05/10/Writing-API-Controllers-in-ASP-NET-MVC-6
A relevant link of comparison, discussions & tutorials:
- MVC5 vs WebApi Project
- Difference between ASP.NET MVC and
ASP.NET Web API - Introduction to ASP.NET Core includes MVC, Web API demos
- Getting Started with ASP.NET Web API tutorials