sorry again, i spoke too soon, further testing shows it infact only works for some text file pairs as the one i posted above (which i was using to test the scripts) I was unable to complete the script by myself, no idea why it doesnt work for any two text files..(i think its because of how InStr works when used in that script, it doesnt seem to care for "lines") but i was thinking of a different approach, something like comparing each line from "2.txt" to every single line one at a time in "1.txt", it could be a better way? although maybe slower. After more experimentation i figured the line by line approach could be done through batch script, im no pro but it resulted in this amazingly bad (but working) batch file, or so i think, anyway i created two special small text files to test this, as it takes a long time on large files, but works quick for a few lines.. here is the bat code, feel free to laugh this time. setlocal enabledelayedexpansion set var=1 for /f "delims=" %%S in (2.txt) do ((for /f "delims=" %%G in (1.txt) do (if !var!==1 (If "%%S"=="%%G" (set var=0) ELSE (If "%%G"=="END" echo %%S>>diff.txt)))) && set var=1) It's a bit of a hack since the string "END" must be at the end of each text file for the batch to know its the "END" lol translation to VBscript or Jscript help would be appreciated (if its possible in Jscript, anything thats faster lol i dont mind) files attached in zip archive include, the bat file, the vbs script, both text files and the expected results to compare. SuperBat.zip