Yes this is possible with Expo! The native builds run on our servers, so when you run exp build:ios it builds your JS bundle and asset manifest, uploads them both to CloudFront, then kicks off a build job on MacStadium. When it's done, you can download the binary and upload it to iTunes (it may be possible to upload without a Mac, I am not entirely sure). This is only needed when you're ready to ship to the App Store, and before that the workflow is no different between a Mac and Windows when using Expo. Read more about this in our docs: docs.expo.io/versions/latest/distribution/index.h…
Using React Native without Expo, you can't really build for iOS without some likely painstaking workarounds involving provisioning your own mac cloud instance.