The main difference is in the synchronization accuracy that can be achieved. With software timestamping as typically implemented (software-only approach), you can see slave synchronization accuracies between 10 and 100 microseconds. You can achieve this level of accuracy with commonly used network hardware such as standard switches, and computers with software PTP slaves.
With hardware timestamping as implemented on a Sonoma it is possible to achieve time synchronization accuracies of 30 nanoseconds with an 8 nanosecond resolution. However, in order to get this level of accuracy, both the Grandmaster and the Slave must be capable of hardware timestamping. This means you will need to purchase specialized hardware to install in each Slave. In addition, network switches must configured as transparent clocks or boundary clocks.