A multicast delegate is a delegate that points to several methods. Multicast delegation is a mechanism that provides functionality to execute more than one method: there is a list of delegates maintained internally, and when the multicast delegate is invoked, the list of delegates is executed.