Identifier super . When a multicast delegate is invoked, the methods in the invocation list are invoked synchronously, in the order in which they appear in the invocation list. The base delegate classes make multicast support easy by providing invocation list management. Delegates address many of the scenarios that are addressed by function pointers, though in a more modern manner. Doing so would violate the language's goals for object-orientation, type safety, and security.
Delegates are object-oriented.
Delegate declarations are compiled into classes, and delegate instances behave just like other instances. Delegates are type safe. Incorrect casting can cause system crashes, and it is possible to do things such as treat an integer value as a function pointer, and vice versa. Delegates are secure . It is useful to examine a real-world example.