文字列の反転は、LINQを用いて次のように実装することもできます。

文字列中の文字の並びを反転する(Reverse)・LINQ版
using System;
using System.Linq;

class Sample {
  static void Main()
  {
    var s = "かごめかごめ かごのなかのとりは いついつでやる";
    var r = new String(s.Reverse().ToArray());

    Console.WriteLine(s);
    Console.WriteLine(r);
  }
}
実行結果
かごめかごめ かごのなかのとりは いついつでやる
るやでついつい はりとのかなのごか めごかめごか

文字列にサロゲートペアが含まれている場合、上記の方法は正しく動作しません。