Wird Task.WhenAll im Beispielcode benötigt?

Im folgenden Code sind task1 und task2 unabhängig voneinander und können parallel ausgeführt werden. Was ist der Unterschied zwischen den folgenden zwei Implementierungen?

var task1 = GetList1Async();
var task2 = GetList2Async();

await Task.WhenAll(task1, task2);

var result1 = await task1; 
var result2 = await task2; 

und

var task1 = GetList1Async();
var task2 = GetList2Async();

var result1 = await task1; 
var result2 = await task2; 

Warum soll ich eine der anderen vorziehen?

Bearbeiten: Ich möchte hinzufügen, dass die Rückgabetypen der GetList1Async () - und GetList2Async () -Methoden unterschiedlich sind.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage