既存のデリゲート要求するメソッドで考えた方が分かりやすいと思うよ。
例えば正規表現置換とか。
static string Test(Match match) {
    return String.Format("U+{0:X4}", (int)match.Value[0]);
}
Debug.WriteLine(Regex.Replace("test", ".", new MatchEvaluator(Test)));
結果: U+0074U+0065U+0073U+0074
マッチした文字列をどう変換するかを、呼び出し側が好きにデリゲートで指定できるわけね。

ちなみにラムダ式使うとこう。
Debug.WriteLine(Regex.Replace("test", ".", match => String.Format("U+{0:X4}", (int)match.Value[0])));