I read this interesting line here, in an answer by Jon Skeet.
The interesting line is this, where he advocated using a delegate:
Log.Info(\"I did som
This introduces a lambda function (anonymous delegate) with no parameters, it's equivalent to and basically short-hand for:
delegate void () { return action.GenerateDescription(); }
You can also add parameters, so:
(a, b) => a + b
This is roughly equivalent to:
delegate int (int a, int b) { return a + b; }