using System.Collections.Generic;
public static void Main()
Console.WriteLine(Reverse("Hello World!"));
private static string Reverse(string text)
var chars = text.ToCharArray();
var newChars = new char[chars.Length];
var threads = new List<Thread>();
for (var i = 0; i < chars.Length; i++)
var thread = new Thread(x => newChars[newChars.Length - x - 1] = chars[(int)x]);
foreach (var thread in threads)
return new string(newChars);