Main difference is speed: Besides the speed of the interface (SATA vs PCI-E) There is significant difference because you can assimilate the Flash with a memory card while the Hard Drive has moving parts inside.

You can make a compromise (if possible in New IMAC e.g) by using a SSD on SATA interface instead the existing Hard Drive, Hope it helps!