Update on October 06, 2021
Normal applications are native applications that are developed specifically for an operating system, and presumably the performance and fluency are better. So, basically progressive web applications are a natural evolution of the web application, they blur the barrier between the web and the applications, being able to perform tasks that generally only native applications could perform.
Progressive web applications are basically web applications, but when using service workers and other technologies they behave more like a normal (native) application than a website, service workers only last as long as their action is required. In a PWA, when you click something or use a function, one of them kicks in, processing the event deciding if the offline cache can complete the request. The idea is that there are multiple offline caches for PWA to select from, providing a much wider range of offline functionality.
This type of application try to make the most of the resources of mobile devices by offering to work outside line, that the experience is equal to or better than an app installed on the phone and without having to install it.
The characteristics of a progressive web application are the following: