I have a Roku 2XS in the office and a Popcorn Hour A-300 in the living room. The Roku is small — the Popcorn Hour is as big as a book, the Roku fits on the palm of my hand. I can almost close my hand around it.
The Roku doesn't have as many connectors as the Popcorn Hour. Getting a digital sound signal from the Roku to an amplifier won't be easy, and the box is small and light enough that it won't sit properly on my desk, which annoys me more than it should. The ethernet and HDMI cables are too heavy for it. Wiggling helps.
The Roku shows advertising on the main screen, while the Popcorn Hour abstains from such ignoble behaviour.
Roku wins on UI (apart from the advertising). In particular, the remote is smaller, friendlier and doesn't suffer from button overdose syndrome. Both boxes are quiet.
Video quality isn't directly comparable: The Roku plays network streams to digital output, and the video quality depends mostly on the network connection. (There's an app to play files from USB sticks, which I haven't tried.) The Popcorn Hour also plays ISO, Matroska, AVI and MP4 streams from NAS, and scales them up to 1920×1080. The upscaling quality varies from astonishingly good in the best cases to not very good in the worst. (Some MP4s encoded directly from high-resolution masters are scaled up well, ditto most of my ISOs, but not all. Matroska files I made from the same ISOs are scaled up poorly.)
Sound quality is identical when comparable. The Popcorn Hour also has analog sound outputs (of poor quality), which the Roku does not.
Update: The Roku has more apps. None I really care about, partly because I use a projector and a largish canvas. For some reason, a large canvas demands a high bitrate in order to look good, and the streaming services generally stop below 3Mbps so the apps I've tried are useless. If you use a screen or small canvas, app availability may be an important factor to you.