var t = session.GetFiles(path, @"C:\Downloaded", false, transferOptions);
Library should throw the exception when directory doesn't exists or application don't have rights to save file.
For now directory is automatically change to 'current directory'.
When library is used in MVC project the default 'current directory' is bin folder.
So IIS pool is reseting, current thread is aborting and there is no exception or error message (in system event log or IIS logs).
var t = session.GetFiles(path, @"Downloaded", false, transferOptions);
Discovery of this bug took me 5 days.