Is it possible to encrypt a message's destination as well as its content? I have imagined a way to break through any kind of censorship but since I don't have enough professional knowledge of cryptography I don't know whether it is feasible or not.

If there is a method that can only enables the recipient to know this message is for him, and when others catch this message they don't even know who will receive that, then no one can block a certain site unless he can decrypt it.

I hope some professionals can respond to this question and tell me if this is possible.
Any peer to peer mesh network would be sufficient.  If peers pass messages on to other peers then no peer can no for certain which peer a message is intended for.  It would be possible to determine (with some degree of confidence) the source of the message.

The real difficulty is handling all the other problems.  How do you deal with malicious nodes, denial of service attacks, and who pays for the network as peers are anonymous.  That is just the tip of the iceberg.

As a real world example the Bitcoin network uses similar system for connecting peers and passing messages.  Transactions are simply messages shared peer to peer in an adhoc fashion (your node tells all your peers who tells all their peers who tells are their peer .... and the recipient is one of them).  Bitcoin solves a lot of those "bad node" problems because the messages (transactions) have a cost in term of fees taken out of the transaction.  They are low but they do prevent things like some attacker just creating a bunch of nodes and telling them to make a trillion messages to cripple the network.