what is the difference between the two and which is better ?
The technology. SSD's use NAND Flash to store data while hard drives use magnetic platters.
The end results, SSD's are about 5 times faster overall (instant access and great random I/O), more durable, consume less power, and less prone to failure (lack of mechanical parts), and silent. The downside: Price and capacity. SSD's don't store a lot, the cost quite a bit, especially for the larger capacities. While prices of SSD's have plummited, they are still much more expensive than hard drives on a price per GB scale.
Personally, SSD's are better, no comparison. The only time an SSD wouldn't be better is if you are archiving media where the extra performance isn't neccessary and greater capacity is important. Most enthusiasts and gamers go with a 2-drive configuration: SSD as boot drive (operating system and essential apps) and a mechanical hard drive as storage for non-essential applications/games, and other media. A good affordable size for SSD's are 120-128GB.
Haven't heard of an mSSD, unless you mean an m-SATA SSD. If so, m-SATA SSD's are small SSD's that use the m-SATA connector. m-SATA was originally developed for netbooks and other mobile devices, but now are used more so to have a small SSD cache (though m-SATA drives can be used as boot drive). SSD caching is where you have a mechanical drive as the only drive, but the most accessed data on the mechanical drive will be duplicated on the SSD cache and read from the SSD for future accesses. This increased performance.
Dont forget to include that Flash storage (such as SSD's) do degrade when you delete data, more so than Hard Drives anyway.
With modern SSD's this isnt a massive problem, as there are redundancies built in and software like TRIM to minimize damage. But in the first gen of SSD's, the performance of the drive dropping dramatically after a few months of usage wasn't that uncommon. Modern drives will easily last years of usage.
Some smaller differences as well, though it requires a bit of explaining.