El personaje de la esposa de Rob Roy, Mary MacGregor, iba a ser interpretado en un principio por Miranda Richardson ('Sleepy Hollow') pero finalmente el papel fue para Jessica Lange ('El cabo del miedo').
Con esta película Tim Roth, quien interpreta a Archibald Cunningham, obtuvo su mayor salario hasta la fecha.
Tim Roth pensaba que iba a ser despedido por hacer su personaje, Archibald Cunningham, demasiado excéntrico y le dijo a su agente que le fuese buscando otro trabajo. Sin embargo, el director de la película le dijo que si podía hacerlo aún más exagerado y excéntrico.
Jason Flemyng ('Lock & Stock') actuó de extra en la película a pesar de la oposición de su agente. Aceptó participar aunque fuese con un papel pequeño porque quería trabajar junto a Tim Roth, uno de sus ídolos.