Разницы нет.Если вы посмотрите на код из Marshal.ReadInt32
, то увидите, что для выполнения того же действия используются указатели.
Единственное «преимущество» с Marshal
состоит в том, что вам не нужно явно разрешать небезопасный код.IIRC, вам также требуется FullTrust для запуска небезопасного кода, так что это может быть вопросом.