Why are delegates reference types?
The question boils down to this: the CLI (Common Language Infrastructure) specification says that delegates are reference types. Why is this so? One reason is clearly visible in the .NET Framework today. In the original design, there were two kinds of delegates: normal delegates and “multicast” delegates, which could have more than one target in …