DApps have their backend code running on a decentralized peer-to-peer network, as opposed to typical applications where the backend code is running on centralized servers. A DApp can have frontend code and user interfaces written in any language that can make calls to its backend. Furthermore, its frontend can be hosted on decentralized storage such as Swarm[when defined as?] or IPFS.
DApps are typically open-source, decentralized, incentivized through providing tokens to those who validate the DApp, and in compliance with a specific protocol agreed upon within the community.
DApps may run on top of distributed computing systems such as Ethereum or Bitcoin. Decentralized applications are stored on and executed by a blockchain system.
DApps have been utilized in decentralized finance (DeFi), which revolves around dapps that perform financial functions on blockchains, a technology that was invented for Bitcoin but has since caught on more broadly.
DeFi DApps allow users to:
Lend or borrow funds from others.
Go long or short on a range of assets.
Trade coins or earn interest in a savings-like account without a centralized intermediary.
All the DApps have a unique code that may only work on a specific platform. Not all DApps work on traditional browsers like Google Chrome or Microsoft Edge. Some of them only work on special websites with a customized code, adjusted to open certain DApps. There are several different DApp browsers that specialize in opening various DApps with their unique codes on one platform, such as Dappscape™, Coinbase Wallet, Trust Wallet, and other.
Online gambling is another industry with many popular Dapps, and the potential to grow even further. 
Among their many advantages, gambling Dapps allow for faster and smoother transactions, low-cost casino operations that result in a lower house edge for the user, more anonymity, and provable fairness. 
There have been criticisms of DApps surrounding their inaccessibility to the average user.[full citation needed]
Many DApps struggle to attract users, particularly in their founding stages, and even those that attract widespread initial popularity struggle to retain it.[full citation needed][needs update]
A notable example was the DApp CryptoKitties, which crashed the Ethereum network at the height of its popularity. CryptoKitties and another similar gaming-based DApp, Dice Games, have failed to attract similar traction since.[needs update]