Programmable I/O and Interrupt-driven I/O both require CPU to intervene, which is an overhead for data transfer.
DMA, on the other hand has Direct memory access, without the intervention of CPU. It doesn't have that overhead and hence is faster.
Option C