Xamarin: Xamarin, created in 2011 and recently purchased by Microsoft, provides a platform to build and design native mobile apps for different device types with ease while only having to maintain one codebase. Xamarin uses C# as the common language, thus it is great for .NET developers, yet can then be used to publish native apps for iOS, Android and Windows. Write once, use anywhere for sure, when Xamarin also allows for a WebView that can then be combined with PWAs to leverage their appeal as well.
Pros: Hybrid apps allow for rapid development, while still encasing desired functionality and design. Hybrid apps can access native features because they are hosted within a native app. While the base of the Hybrid app is native, the content is built from coding used for the Web, thus most changes won’t have to go through the app store, saving both time and money.
Cons: Hybrid apps are still not as tailored as native apps. They will always lose to native apps in terms of speed and responsiveness. While Hybrid apps do offer a native feel, they are never truly native. Like native apps they must be downloaded to your device, sometimes an unappealing feature that pushes others to go the more progressive route. In addition, WebView requires Internet access unless you are using HTML5/service worker/caching.