He encontrado esta solución:
CheckForIllegalCrossThreadCalls = false;
Funcionar funciona, aunque creo que no es la más óptima y eficiente. Poniendo esto en el evento Load del formulario o despues del método IniticializeComponent y ya lo tendremos resuelto.
Más información:
http://www.elguille.info/NET/vs2005/..._otro_hilo.htm