When a multicast delegate with a return value invokes several methods, what value does the call return?
Correct answer C. The return value of the last method in the invocation list
Explanation
A multicast delegate calls each method in its invocation list in order. When the delegate type returns a value, only the result of the last method is returned and earlier results are discarded. To collect every result, iterate over GetInvocationList() and invoke each delegate yourself. This is one reason event handlers usually return void.
Answer checked How we write and check questions
Discussion