The point and click scripting it does is pretty neat. Makes it easy to stub out responses if you happen to be a client developer blocked by your server developers.
I like Fiddler, although I use Charles almost every day. The advantage of Fiddler is that it has an API to program the shit out of it. It's .NET based and only for Windows.
Wireshark is also great but has a steep learning curve.
I use Cello from the Mac App Store and I quite like it. I used to use mitmproxy, you can't interrupt/modify responses in Cello like you can with mitmproxy.