Il Cantone di La Roche-sur-Foron è un cantone francese dell'arrondissement di Bonneville.
A seguito della riforma approvata con decreto del 13 febbraio 2014[1], che ha avuto attuazione dopo le elezioni dipartimentali del 2015, è passato da 9 a 27 comuni.
I 9 comuni facenti parte prima della riforma del 2014 erano:
Dal 2015 i comuni appartenenti al cantone sono i seguenti 27: