It does do what I think you want, but as ever with GNU/FSF, is inscrutable. Don't overlook that you can combine arguments. Consider two files:
1.txt 2.txt
----- -----
Ash Ash
Holly Beech
Oak Holly
Rowan Rowan
Whitebeam Whitebeam
Then:
c:\Zdir>c:\dos\Utils\comm.exe -3 1.txt 2.txt
Beech
Oak
-rjbull
Oh that is surely inscrutable, pretty much goes against my knowledge of the word suppress, ie. suppress = remove;hide;subdue

However, the File Intersection program looks pretty well spot on. 
-4wd
It's good, but as I recall it, insists on writing all three files each time. That means that in batch processes, you have to remember to delete the unwanted as well as wanted ones afterwards. But, it seems more intuitive than comm.
But at least you would be able to associate an output file with an input list which would get you the path, (well, at least the initial folder path pertaining to each list).
I have an idea on how to get path output with filename but it involves modifying the sub-routine that returns the file list, (someone else's), into outputting a two dimensional array rather than one.
Speeding up the processing, I've realised, is easy (read: I'm stupid), but still wouldn't be as fast as the CLI C based alternatives I'd say.
Are we going to forgo the chance to call it TCBOO aka Highlander's There Can Be Only One? -TaoPhoenix
I did think of that but I didn't want to sully the name of a semi-decent movie

In present test the progress bar has already gone from left to right, but job appears incomplete.-nkormanik
Mea culpa....I didn't realise the progressbar is virtually useless with large numbers so I've removed it and just added a statusbar that spits out the numbers as it progresses.
Also made each folder individually recurseable, (Am?), and will add a button to stop the process, (or change the Go button to Stop).
Update

thatta
way