Решение One Line с использованием Linq без использования string.Replace()
,
string result = string.Join("", str.Select(x => x == 'H' ? 'p' : x));
`
Если вы хотите заменить всю строку, попробуйте это
string result1 = string.Join(" ", str.Split(' ').Select(x => x == "Hill" ? "Zill" : x));
Введите:
The Haunting of Hill House!
Выход:
The paunting of pill pouse!
The Haunting of Zill House!
//^^^^ Replaced word from Hill to Zill
.net Fiddle