Безопасный код осуществляет проверку типов. То есть, гарантируется что определенная область памяти содержит объект определенного типа. Небезопасный код позволяет обращаться к памяти без проверки типов.
Дима Пунтус, в определенных сценариях, может ускорять. Лично мне пока не пригождалось. Это очень узкоспециализированная фича в контексте c#. Неплохо знать что она есть, но стоит до последнего избегать её использования.