.NET Fiddle

CSharp · Console

/Program.cs

using System;
using System.Linq.Expressions;
using System.Threading.Tasks;
using System.Linq;
					
public class Program
{
	public static void Main()
	{
		GetLotsOfStuff().Wait();
	}
	
	public static async Task GetLotsOfStuff()
    {
		int[] collection = {1,2,3};
        var tasks = collection.Select(q => GetDetailAboutTheThing(q));
        var things = await Task.WhenAll(tasks);
    
        foreach(var thing in things)
		{
			Console.WriteLine(thing);
		}
    }
	
	public static Task<int> GetDetailAboutTheThing(int i)
	{
		return Task.FromResult(i*2);	
	}
}
;