A money order is a pre-funded paper payment. Assuming that it is legitimate, it is already guaranteed and usually cannot be canceled. A check must be cleared through the customer's bank before the funds are made available. Money orders are usually safer, but there is quite a bit of money order fraud out there.
- Money order is EXACTLY like Cash (except you have to go to the bank or western union to actually get the cash value) - Personal Check can be fake or bounce, so they aren't as reliable. If receiving one or the other you should suggest money order because it's better and safer for you.
Assuming all are genuine, a personal check is one which a private individual or a company issues and funds are drawn against their bank account while a money order is issued by the bank. The main difference is that when you receive a personal check, there is no way to determine if the check would clear or bounce due to lack of funds while a money order is an bank issued check and you would be guaranteed that you get the money.
A money order is backed by money, that the person had to pay on the spot to get the money order. For the personal check, it could bounce and you could be out of luck, so always go for the money order.
Most people know that personal checks can be faked, but money orders can be faked as well. Especially if they are using the old style printer for the money orders, the ones with the handle on the side and all the slides for the amounts.