I have multiple tasks returning the same object type that I want to call using  Task.WhenAll(new[]{t1,t2,t3});  and read the results.
When I try using
Task<List<string>> all = await Task.WhenAll(new Task[] { t, t2 }).ConfigureAwait(false);
I get a compiler error
Cannot implicitly convert type 'void' to
'System.Threading.Tasks.Task<System.Collections.Generic.List<string>>
both tasks are calling method similar the this.
private Task<List<string>> GetFiles(string path)
{
    files = new List<string>();
    return  Task.Run(() =>
    {
       //remove for brevity 
        return files;
    });
}