I'm going with Gyarados.
In comparison, Gyarados is much more easy to utilize when it comes to battling, as it carries a lot of moves in its arsenal which we could find helpful, such as Dragon Dance, Waterfall, Earthquake, and much, much more. Not only that, but its abilities are both also quite valuable.
In terms of design, it would still have to be the same answer. In my opinion, Gyarados is more scary-looking, and I believe that appearance suits this Pokémon pretty well. Sharpedo isn't too bad, either, though; it's kind of unique (we've never had any Pokémon before looking like this).