would you mind to elaborate the most crucial point(s) a bit in non technical terms? I'm not having a technical background...
Hmm, well, in simple terms, colored coins are transferred together with Bitcoins, thus many properties of Bitcoin are also applicable to colored coins.
For example, Bitcoin escrow and dispute mediation contracts: (
https://en.bitcoin.it/wiki/Contracts#Example_2:_Escrow_and_dispute_mediation ) also work for colored coins.
On the other hand, Mastercoin works by embedding messages into the blockchain, semantics of those messages is entirely different from semantics of Bitcoin transactions.
1. Lightweight wallets: to check whether Mastercoin payment is correct, one needs to obtain the whole list of messages, and the only reliable way to do that is to scan the whole blockchain starting from the first exodus transaction. This means that client can't be lightweight. On the other hand, to check whether colored coin payment is correct it is enough to check transaction history from genesis transaction of a color up to a transaction in question, it is anticipated that this history is much smaller than the whole blockchain, and it is possible to obtain it from anybody (e.g. a guy who pays you) as client can verify history independently without scanning the blockchain on his own.
2. Bitcoin network ignores conflicting transactions, and thus merchant can accept small-value transaction without confirmations, knowing that double-spending it is hard. On the other hand, Mastercoin transaction conflicts are not recognized by Bitcoin miners, thus double-spending Mastercoins is pretty much trivial, thus vendors shouldn't ever accept them.
3. Bitcoin contracts which I mentioned above can be used to implement secure instantaneous payments: a third party can guarantee lack of double-spends. Same can be used for colored coins. But since Mastercoin doesn't use Bitcoin scripting, it cannot use this approach.
4. Colored coins trading is done through a separate protocol, p2ptrade. Blockchain is used only to fix trades. Being a separate protocol, it is very flexible. On the other hand, Mastecoin trading is a part of the protocol and it needs to be done through a blockchain, and one needs to wait until offer is confirmed before accepting it, confirmations take time.
5. It is also possible to combine p2ptrade with 3rd-party double spend prevention to achieve instantaneous secure trading. No such thing is possible for Mastercoin, they'd have to use fully centralized services to do this.
6. It is possible to do p2ptrade transactions without publishing them on the blockchain for some time, which means that it is possible to do more transactions than Bitcoin network allows with only very limited trust to trading service, and without paying large fees. Again, no such thing is possible for Mastercoin...
To elaborate on the last point, this requires some kind of centralized trading service which will coordinate trading, but it won't be able to steal anyone's coins.
If the analysis / criteria are applied to bitshares how does that look?