С NSMutableString
вы можете (и должны) просто сделать следующее:
[Value appendString:str];
-stringByAppendingString
действительно возвращает экземпляр NSString, даже если он был вызван для NSMutableString, и преобразование его обратно в изменяемый приведет к снижению производительности и ухудшению читаемости кода.
P.S. Также обратите внимание, что в правилах стиля target-c имена переменных должны начинаться со строчной буквы.