Detection - Knowing where trains are on your layout can be used for many purposes. It can be used for position indicators, operational Signalling, Automated Control or Animation. To perform these tasks, a certain amount of blocking needs to be done for train detection. Even though this does take some work, it's easier to accomplish this with DCC than with block control.
Transponding - Typically, when a decoder gets a packet, it reports back that the packet was received. Transponding provides three potential advantages: letting the system know which signal block, the locomotive (or car) is in, transmitting data about the loco (or car) back to the system, and making sure a locomotive with a new command gets it quickly.
Transponding is used for locomotive and/or car locations. This is useful when using computers to control your layout for whatever reason - automated layouts, collision avoidance, passenger service lines, etc.
Signaling: is vital for realistic operations, however it's not vital for model railroading. There are many ways to add signaling to your layout and can get quite complex. There are books on signaling, so it's recommended that you research how you want your signaling to be. At this time, this article does not go into all the aspects of signaling, but it does give you examples of how to connect various DCC hardware to get signaling working.Currently, transponding is not part of the NMRA standard or RP.