I think there should be a seperate area for this kind of questions.
I'm trying to get the hang of WCF as you probably know from my other posts around here. I found a simple example of WCF callbacks, and I'm trying to understand it by reproducing it. As usual though, the sample is in C#, and although I'm starting to get better at it, I still don't get it all the time.
So here's another piece of C#.... could anyone explain or translate it (will serve as explanation enough I hope) for me?

Code:
public void AddMessage(string message)
{
    subscribers.ForEach(delegate(IMessageCallback callback)
    {
        if (((ICommunicationObject)callback).State == CommunicationState.Opened)
        {
            callback.OnMessageAdded(message, DateTime.Now);
        }
        else
        {
            subscribers.Remove(callback);
        }
    });
}