A native application is an application written for a specific platform, making use of platform-specific APIs. A hybrid app is an application written using web technologies and wrapped in a thin native web-browser. A hybrid app can quickly be ported to various platforms where they share the same underlying codebase.
Mobile web apps are web apps optimized for a good phone experience. They aren’t mobile applications, but websites written in HTML/CSS and run by a browser. While they may be designed to resemble the feel of smartphone apps, they don’t have much in common. A mobile web application is a website optimized to be used on a mobile. If done well, the experience is remarkably like a native or hybrid application.
Hybrid apps are usually buggy and slower than native apps, since native apps don’t go through hoops and layers of containers to work. Native apps are much more performant.