Да, спросони что-то не заметил в коде удаления дублей, каюсь, подумал, странно, что вы пытаетесь прочитать файл в переменную, а потом её же записать в другой файл без изменений, подойдёт же просто такой код )
File.Copy(@"C:\dir1\1.txt", @"C:\dir2\2.txt", true);