1. Archibald Cunningham (Rob Roy)
Tim Roth is quite an underrated actor in my opinion and despite featuring in many films he has never quite cracked the big time, for any evidence of just how good he is look no further than his Oscar nominated performance as the absolutely repulsive Archibald Cunningham. As if being a thief, a murderer and a rapist were not enough he is also a fan of dodgy wigs, making him the absolute best (or should that be worst?) villain on this list. Not only one of the greatest British bad guys of all time, Cunningham will go down in cinema history as one of the best bad guys of all time full stop.