Dash uses a modified version of coinjoin to enable its users to mix their outputs with each other. Coinjoin was originally proposed by Gregory Maxwell, and has been available for use in Bitcoin for some time. There are a number of services which connect Bitcoin users looking to mix their outputs, the most popular of these being JoinMarket.

Dash's privacy feature, called PrivateSend, is a series of chained coinjoins. To use PrivateSend, you must first allow the Dash client to "mix" your coins. Once this feature is enabled by a user, the client will start looking for other users with whom to mix. Depending on the number of "rounds" selected, this process can take anywhere from half an hour to several hours.

Each round refers to an individual coinjoin with at least 2 other users. These individual coinjoins are then chained, which simply means that multiple coinjoins are performed one after another, ideally with different users participating in each coinjoin. According to the Dash developers, a higher number of PrivateSend rounds increases the privacy of a user's transactions.

PrivateSend does have a potentially serious flaw. Each coinjoin requires a server to facilitate the mixing. This requires users to trust that the server is not recording details on where each user's outputs are ending up. Dash attempts to mitigate this risk by using what they call "masternodes". Masternodes are the servers which coordinate PrivateSend. These masternodes require a deposit of 1000 Dash to run. In theory, this collateral prevents someone from creating an arbitrary number of nodes for the purpose of recording coinjoin details.

Does this really mitigate the risk of coinjoin details being recorded, enabling transactions to be traced? Not reliably. The reality is that the majority of masternodes are hosted by a small number of VPS providers. These VPS providers could easily record the transactions being facilitated by any masternode that they host.

Monero uses a cryptographic primitive called ring signatures. As implemented in Monero, a ring signature joins a user's transaction with other transactions, such that an observer can not tell which transaction in the ring is the "real" one. These other transactions do not need to occur simultaneously with the one that a user wishes to create. Monero can use any transaction in the blockchain as a participant in a new ring, assuming the correct outputs are present.

This is superior to coinjoin for a number of reasons. First, there is no need to trust a mixing server. Valid transactions are created by a user's client and then submitted to the network. Second, the privacy afforded by Monero is ensured through cryptography. Ring signatures have gone through decades of peer review in academic journals. This is time tested cryptography, which means a significantly higher degree of reliability.

Finally, Monero is one of very few cryptocurrencies which have actual cryptographers working on them. If you visit the Monero Research Labs page on Monero's website, you can view some of the research that has been published. These cryptographers are actively working on identifying and correcting any flaws in Monero.