У меня была схожая ситуация, когда поздние подписчики подписывались на Субъект после того, как его значение прибыло.
Я нашел ReplaySubject , который похож на BehaviorSubject, работает как шарм в этом случае. И вот ссылка на лучшее объяснение: http://reactivex.io/rxjs/manual/overview.html#replaysubject
Без любого кода обработки ошибок:
File.Copy(path, path2);
Используйте класс FileInfo.
FileInfo fi = new FileInfo("a.txt");
fi.CopyTo("b.txt");