Monero's anonymity feature is much better than bitcoin, but I heard ZCASH has better privacy protection than Monero, is it real? I fully trust Monero will be the great, and compete with bitcoin. XMR is better than litecoin at least.
This has already been said a few times, but the thing is essentially this:
ZCASH has in principle a better anon system, the zero knowledge proofs. There is absolutely no way, from the block chain, to suspect any user of a note over any other note user concerning a given transaction. You only know that a transaction is legit, but you don't know with what other transaction in the past it is related at all.
However, the way ZCASH put this into work has a big no-go: it is OPTIONAL. This means that a note transaction can only come from any other note user, and not from a normal ZCASH user. Now, the problem with these ZK proofs is that they are very computing intensive, and it can take several minutes on a PC to generate one (while a normal transaction takes milliseconds: it is a bitcoin transaction essentially). So people only use notes if they have a serious incentive. When you convert zcash to a note, this IS visible on the chain. So you can be traced of having turned your zcash into a note. AFTERWARDS, when you use your notes, this is totally opaque. But you can be tagged as someone who turned his zcash into notes, and put some effort in doing so.
In monero, things are different. There is a potential link of every transaction to only a few past transactions (one is the real one, the others are fake links). In the forward direction, every existing transaction can be fake used in a successive transaction. So one never knows if a given transaction is actually spent or not, but one can say that it CAME from "one of these" and MIGHT have been spent to "one of those" (or not). If one has a potential transaction path in monero, this can be verified as a possibility, or not, on the block chain. Many transaction histories are NOT possible given the monero block chain - which is different with the ZK proofs, where all possible combinations are equally likely (which makes ZK proof superior in principle). Nevertheless, a few successive transactions on the monero block chain are sufficient to make the number of possibilities grow so large that the propagation of identity information is totally diluted.
What is good in monero is that this scheme is applied to EVERY transaction. There's no distinction between those wanting anonymity, and those that do not care, and that is essential in any anonymity scheme: you shouldn't stand out as wanting it in a particular case.
ZCASH could have been superior, if the anonymity was compulsory. As anonymity is optional, ZCASH completely wasted the advantage of its superior cryptographic scheme (probably because in reality it is too computing-intensive).