As of July 22, 2021, the explanation in the official Apple documentation for export options can be found here: https://help.apple.com/xcode/mac/current/#/dev31de635e5 - it doesn't answer this question, hence why I'm not putting it as an answer, rather just for reference.
Post
Replies
Boosts
Views
Activity
Answering this because I had the question today and had to dig to find the answer. Sharing here, in hopes it helps someone down the road.
Per documentation in Xcode Help for "Distribution methods", it lists the types of distribution methods (App Store Connect, Ad Hoc, Enterprise, Copy App, Development, & Developer ID). To answer the question about the "Real" difference, let's take a look at the "ad hoc provisioning file" pop up (hyperlinked text in the description of the Ad Hoc method) and the "development provisioning profile" pop up (hyperlinked text in the description of the Development method) and let's compare. There may be others, but these were three differences that I was able to pull out:
1. Difference: Devices that app can run on
"ad hoc provisioning file"
An ad hoc provisioning profile is a distribution provisioning profile that allows your app to be installed on designated devices...
vs.
"development provisioning profile"
Specified devices associated with the team
The ad hoc method allows you to distribute your app to Test Flight and other sources and enables "designated" devices to run the app, including devices that aren't specifically registered to your Apple Developer Program account to run the app. (think public TestFlight testing)
2. Difference: Ad hoc provides added security
"ad hoc provisioning file"
An ad hoc provisioning profile ensures that test versions of your app aren’t copied and distributed without your knowledge.
and
When you export your app using an ad hoc provisioning profile, the ad hoc provisioning profile is included in the app bundle and the iOS App (IPA) file is signed with the distribution certificate. The app launches on a device if the app’s bundle ID matches the App ID, the signature matches the distribution certificate, and the device is in the device list of the ad hoc provisioning profile.
The ad hoc method provides more security in the builds that are exported from your archive. That security comes in the form of
3. Difference: Development allows apps/services to work in a Dev env.
"development provisioning profile"
A development provisioning profile allows your app to launch on devices and use certain app services during development.
And
"ad hoc provisioning file" pop up
An ad hoc provisioning profile is a distribution provisioning profile that allows your app to... use app services without the assistance of Xcode.
While it's not explicit about which app services are enabled for use during development, it is a difference between the two. I believe entitlements and services such as push notifications, IAPs, would likely fall under this umbrella. Also, the explanation for the ad hoc method leads me to believe that some services can't work correctly outside of having the help of Xcode until they're "graduated" to be built in an ad hoc method.