DeclaringandUsingDelegates A delegate is a pointer to a method. A delegate looks and behaves much like an ordinary method when it is called. However, when you call a delegate, the runtime actually executes the method the delegate refers to. You can dynamically change the method that a delegate references, so code that calls a delegate might actually run a different method each time it executes. The best way to understand delegates is to see them in action, so let's work through an example. NOTE If you are familiar with C++, a delegate is very similar to a function pointer. However, unlike function pointers, delegates are type-safe; you can only make a delegate refer to a method that matches the signature of the delegate, and you cannot call a delegate that does not refer to a valid method. . Declaring and Using Delegates A delegate is a pointer to a method. A delegate looks and behaves much like an ordinary. actually run a different method each time it executes. The best way to understand delegates is to see them in action, so let's work through an example.