A Progressive Web App (PWA) is a web app that uses modern web capabilities to deliver an app-like experience to users. https://ionicframework.com/docs/v3/developer-resources/progressive-web-apps/
Progressive Web Apps are fast, work in poor network conditions, include good practices for SEO as well as accessibility. It should be noted that Progressive Web Apps refer to the Front End of any Web Application.
Progressive Web Apps utilize modern techniques to optimize, minify, bundle, and fetch assets. This makes the front end of the application load much faster.
PWAs utilize service workers to ensure that the application has some offline and or poor network activity capability
PWAs come out of the box with the correct markup (html) annotated with the correct properties so that they are accesible by different devices (such as screen readers) and are indexed correctly by search engines.
Best Practices also includes app's being responsive to different screen sizes
By this we mean that not all apps should or can be a PWA. It depends on your app requirements, target audience etc.
The Google Chrome browser released a great tool as apart of their Developer Tools called Lighthouse Audit.
Here is a great guide on how to perform a Lighthouse Audit. https://developers.google.com/web/tools/lighthouse/