using System.Threading.Tasks;
public static async void Main()
Task.Factory.StartNew(() => GetSomething1()),
Task.Factory.StartNew(() => GetSomething2()),
Task.Factory.StartNew(() => GetSomething3())
await Task.WhenAll(tasks);
Console.WriteLine(tasks[0].Result);
Console.WriteLine(tasks[1].Result);
Console.WriteLine(tasks[2].Result);
public static int GetSomething1() { return 1; }
public static int GetSomething2() { return 22; }
public static int GetSomething3() { return 333; }