The applications that are build using any blockchain as its backbone are called as decentralized applications or dapps in short. If you are familier with the traditional structure of a full stack web application then understanding the dapps will be just a peice of cake for you.
You've now understood that the applications which uses the blockchain are dapps but the question remains then why are they called as dapps ? can't we just call them as applications on blockchain ?
If you understand the blockchain a little bit or even if you search what is blockchain then the results shown will definitly contain a word 'decentralized' and since the blockchain itself is a decentralized then the apllication built using blockcnain must also be decentralised. We will talk about the centralized and decentralized difference below when we will compare the traditional apps with dapps.
Let's take an example of the very popular term MERN stack developer. Which are MongoDB, Express, React and Nodejs. here react is used for front end, express and nodejs are for backend and mongodb is database.
but in the case of dapps particulary talking about dapps that are built on top of ethereum blockchain we use smart contracts. the complete flow is as follows
Now here we can also use server and database as well along with smart contract and blockchain but the main difference is that the complete working of the dapp is defined with smart contract itself. The smart contracts are deployed on ethereum blockchain and also the data is directly stored on the blockchain itself instead of using any traditional database. developer can also use traditional database along with ethereum as per the requirements.
Smart contract is just a piece of code that governs the complete process and flow of working of decentralized application (dapp). In case of the traditional app the code written in the backend(server side) will decide the working of application like that.
for this you can refer to this article : link
Since the dapp is build using the blockchain technology all the benefits and properties of blockchain are also applicable to the dapp. Like decentralized, distributed, immutable, etc.
You must have heard the news of hacking of a famous applications or if their server is down for sometime, this can be avoided with the dapps. Blockhain also eliminates the third parties and any single entity being owner of the complete application. Which one yould you prefer one single orgnization in control of the complete user data or a decentralised application where everyone is in charge of their own data ? thus blockchain is also good at protecting your privacy than a traditional application. Being an immutable nobody can erase or rewrite the data stored on blockchain.