A UnauthorizedAccessException
выбрасывается при ошибке доступа к файлу на диске. Это ошибка на уровне операционной системы, например, обычный пользователь пытается перезаписать файл операционной системы (например, kernel32.dll).
A SecurityException
выбрасывается в случае нарушения безопасности на уровне CLR. Например, если вы работаете в качестве приложения ClickOnce с низким доступом и пытаетесь выполнить чтение / запись в том месте файловой системы, которое запрещено настройками безопасности CLR.