According to this question:
FileSystemWatcher vs polling to watch for file changes
it is mostly a problem of the InternalBufferSize
try to push that value a little up. But there are also some situations, where even that won’t work e.g. network shares.
The alternative would be polling as said in the other question, which means that you need a list of the current files in the folder and a timer, that cyclic compares the items inside the folder with which are in the stored list.