Both the tools serves different purposes :
a. TDM/PDM is persistant data masking where the data will masked at the database , DDM is dynamic data masking where the actual data will not be masked , however when viewing the record , masked data will be shown.
b. If Target Database has be masked , then in case of TDM the replica of the Source database should be created and maintained. In case of DDM , we don't need to create a new schema or tables .
c. DDM can be applied more on the production databases , where the actual data should not be modified and while viewing the records can be masked.
d. Building rules and logics are easier in TDM as you have a UI , while creating the masking security rules are little difficult.
e. Maintenance is easier with DDM compared with TDM . For TDM a dedicated server where Informatica should be running and Database for the respository should be created.