Поток немного похож на обобщение zip
из других функциональных языков.
Для простых случаев, когда все элементы аргументов из вашего примера являются списками,
Thread[f[args]]
эквивалентно
f @@@ Transpose[{args}]
, как показано в первой паре примеров в документации. Основная проблема - когда у вас есть аргументы, которые не являются списками, и в этом случае они эффективно вычеркиваются; например,
Thread[g[{a, b}, c, {d, e}, f]]
эквивалентно
g[#1, c, #2, f]& @@@ Transpose[{{a, b}, {d, e}}]
Обычно я использую Thread для построения списков правил или списков уравнений.