Worth pointing out that the stick versions of both Roku and Fire TV don't support local playback (i.e. playing videos off a USB or SD card). For that you'd need the Roku Ultra or the Fire TV Cube (which is $120).
These devices are mainly for streaming content though, so it really depends on what you want to use it for.
These devices are mainly for streaming content though, so it really depends on what you want to use it for.