dApps can be written in various programming languages, depending on the underlying blockchain platform they are built on. For example, Ethereum, one of the most popular blockchain platforms for dApps, primarily uses a programming language called Solidity. Other blockchain platforms like EOS, Tron, and Binance Smart Chain support languages such as C++, Java, and Python. The choice of programming language often depends on the specific blockchain's development environment and tools.