Dexter. No contest. He's essentially a more functional version of Hannibal. Also he's a guy in his prime vs a middle aged man. He's chosen harder targets and gotten away with killing more of them. And pretty much any time Dexter is in any real danger, it's because he chose NOT to kill a target when he had a chance. Outside of Silence, Hannibal is constantly getting captured and nearly eaten himself. Even in the weird prequel novel where he becomes a weird mary sue cannibal batman, he STILL constahntly gets into issues and needs bailing out. Lecter would be a seasonal villain, but he'd still go down.