Whatever solution you use, just make sure it allows "hotlinking" without having to leave the app/Lemmy web interface to see them. If an image doesn't embed, I won't click outside to see it; I'll just scroll past.
I've not had any problems with Catbox, though (I use it to share gifs larger than my instance allows for uploads). It was down a bit yesterday (was going to share a screen recording demonstrating a new feature), but works fine for the most part.
I have read Yarn (gif archive) is sometimes problematic/unreliable, but I usually wrap those in Tesseract's image proxy which addresses it.
For 95% of cases, I just upload directly to my instance. It's got a 250kb max limit, but we use Tesseract as the default UI which can pre-process uploads to webp prior to uploading which will typically get them under that limit.