Tente usar StringBuilder.Replace em vez de.
Deve notavelmente melhorar o desempenho.
Isso é válido como um
string.Replace(..)
substitude e não para regex
calls.Mas aparentemente o gargalo está em string
chamadas. EDITAR :
Exemplo (pesudocódigo ):
char[] c = new char[]{'.', ' '};
Value = Value.Trim(c);
var sb = new StringBuilder(Value);
sb.Replace("'", "");
sb.Replace(")", " ");
sb.Replace("(", " ");
sb.Replace("-", " ");
sb.Replace("_", " ");
sb.Replace("רח", "");