I use join when i want to report the contents of an array to a file or a print window. We have some functions that return the results queries as arrays. We use the arrays in our scripting but if we want to see what's in them, join is the way to go.
I've seen a co-worker use Filter in a way that made sense... but can't remember the circumstances. It doesn't come up often.
Call WriteToFile(Join(arrResults, vbcrlf), sFileName)
Print Join(arrListOfStuff, ",")