in the column ‘List 1’ you have on the first row a list with 4 items. Each item is evaluated via the filter as ‘CurrentValue’ to see if it contains a value that lives in Column List 2. The Filter first checks item 1 (which is the first currentvalue) and checks if it lives in List 2, then it checks item 2 (the 2nd currentvalue) to see if this one lives in List 2 and so on.
Without the Not() you would have as result ‘item 2’, but you needed the difference, so we turned the result upside down and instead asked for ‘contains not’ you write as Contains().Not().
I hope it helps a bit.
last but not least, would you be so kind to mark my contribution as solution, that is mainly important for those who provide support of all sorts (for free).