As it was said before FSW isn't perfect, e.g. it doesn't report about each new file. My work around was to scan the whole dir every time FSW.created raised. Regarding other questions Luc Pattyn suggested a viable approach. PS: once you are doing such stuff you should familiarize yourself with synchronization methods.