Through allows multiple functions to be easily applied to a single argument. For instance, suppose I wanted to count the number of characters in {"t", "o", "d", "a", "y"}, and also join them into a single string. Then I could do:
s1 = {"t", "o", "d", "a", "y"} Through[{StringJoin, Length}[#]]& @ s1 {today, 5}
But suppose I wanted to do this for a list of lists. Then I would need to use Map to apply the functions to each sublist. I could accomplish that with this:
s2 = {{"h", "e", "l", "l", "o"}, {"d", "a", "y"}} Thread@ MapThread[# /@ s2 &, {{StringJoin, Length}}] {{hello, 5}, {day, 3}}
But that syntax is a bit ugly. It would be simpler and more elegant if there were a function that could do for Map what Through does for Apply, i.e. that allowed one to directly Map multiple functions to a single argument, like so (here I've called the hypothetical function MultiMap):
MultiMap[{StringJoin, Length}[#]]& @ s2 {{hello, 5}, {day, 3}}
Does such a function exist?

{StringJoin[##], Length[{##}]} & @@@ s2$\endgroup$Through[{StringJoin, Length}[{##}]] & @@@ s2$\endgroup$Through[{StringJoin, Length}[#]]&/@s2? $\endgroup$