What is the difference between factory unlocked iPhone and software unlocked iPhone?
The primary difference is that software unlocked iPhone's firmware shall only be upgraded with caution. Once the firmware is upgraded/updated, the iPhone loses the unlock and can only be used with original carrier. You will need to reinstall the unlocking software in order to unlock the iPhone. However, if the unlocking software is still under development and is not available for the latest iOS firmware. You will have to wait until the software becomes available. Often times, the unlocking software lags behind the new iOS firmware release dates for a few days or weeks. But it does become publicly available for free.
In addition, factory unlocked iphone typically runs at a much higher price than software unlocked iphone. This is because Apple and AT&T does not sell them in United States. One will have to import them from selected other countries such as Canada or UK.
Other than that, the functionality of the phones are the same. The only way to tell whether it's a factory unlocked iPhone or a software unlocked iphone is to check the model number of the phone in the Setting -> About menu.