Flash. Easily. Sonic has never shown himself to be able to move at speeds anywhere near Flash's and doesn't have the power of the speed force. He clearly isn't even aware of all the powers his speed is able to provide him with considering he was unable to act when Robotnik had a gun to Amy's head in Sonic Adventure 2. Its said he can go from 0 to max nigh instantly but he just didn't there and it would have saved him a lot of trouble. Not to mention that Flash also has the Infinite Mass Punch, Speed Steal and various other goodies while the best Sonic has is Super Sonic but that won't protect him from Speed Steal and even then I've never seen him move close to Flash's speed at all.