There is a boatload of information that could be given as possible answers to this question. The number one determinant of your destiny is what platform you built the app in. There is no way to do a 'private', off-the-grid release for iOS. Apple devices that are not 'jail-broken' do not allow installing software that hasn't come from Apple's approved sources, and the longest a 'beta' version of an app will persist on a mobile device is 90 days. Google, on the other hand, doesn't have things so locked down. All you need (I'm told, never tried it myself) to install an app on an Android device is a .apk
installer file.
I'll talk about how things were for us for our 2019 release. If I had any possible choice, and I could change my client's functionality requests, I would have built the app in a web-oriented platform that could be compiled as a PWA, such as Ionic or React. This completely avoids the issue of any compliance with, submission to, or review process by any app store guidelines. Instead, we used Xamarin Forms, which meant we had to go the old-fashioned submit, review, and release process. As C# developers, the build was a lot easier, but the submit and review was tough.
Apple Store
A lot of programmer blog articles cover this topic. For example, this one. There's a lot of thorough documentation by Apple on the subject of how to build and release an app through their app store. If you want to go the route of a private release through your Apple Developer Account, the organization that you're releasing to must have their own Apple Business Account. That's a lot of hoops to jump through. We attempted the Business release route, but our clients couldn't finalize their Business Account. Thereafter, we removed the binary from the Developer Account and attempted to get it approved for the public app store. It took a lot of work to reach the goal.
Google Store
Google was by far the easier release route we journeyed. Uploading a binary and distributing it was pretty straightforward. Check programmer blog articles, and Google's developer documentation for more information.
Updating the App
Once the app was approved for public release, updating it was much easier. We uploaded a new binary to the Developer Account and submitted it for review in a similar fashion to the original approval process, but because it was already an approved app it succeeded every time without an issue.
Hopefully this helps. It was a long road for us, and I hope something I learned will be of benefit to you.