Vilarrubla nahm von 1999 bis 2013 an Wettbewerben der Fédération Internationale de Ski teil. Bis 2004 trat er vorwiegend beim Continentalcup an. Sein erstes Weltcuprennen lief er im November 2001 in Kuopio, welches er mit dem 98. Platz über 10 km Freistil beendete. Bei den nordischen Skiweltmeisterschaften 2003 im Val di Fiemme belegte er den 40. Platz über 50 km Freistil und den 39. Rang im 20 km Doppelverfolgungsrennen. Ab 2004 nahm er am Skilanglauf-Alpencup und im Skilanglauf-Weltcup teil. Bei Weltcuprennen belegte er hauptsächlich Platzierungen außerhalb der Punkteränge. Nur bei zwei Weltcuprennen konnte er Punkte gewinnen. Bei den nordischen Skiweltmeisterschaften 2005 in Oberstdorf erreichte er den 51. Platz im 30 km Verfolgungsrennen, den 42. Platz im 30 km Massenstartrennen und den 27. Rang über 15 km Freistil. Seine beste Platzierung bei den Olympischen Winterspielen 2006 in Pragelato war der 31. Rang im 30 km Verfolgungsrennen. Im Februar 2007 holte er in Changchun mit dem 17. Platz über 15 km Freistil seine ersten Weltcuppunkte. Dies war auch sein bestes Ergebnis in einem Weltcuprennen. Bei den nordischen Skiweltmeisterschaften 2007 in Sapporo errang er den 85. Platz über 15 km Freistil. Den 48. Rang erreichte er bei den nordischen Skiweltmeisterschaften 2009 in Liberec über 15 km klassisch. Bei den Olympischen Winterspielen 2010 in Vancouver errang er den 53. Platz über 15 km Freistil, den 40. Rang im 50 km Massenstartrennen und den 31. Platz im 30 km Verfolgungsrennen. Sein bestes Resultat bei den nordischen Skiweltmeisterschaften 2011 in Oslo war der 46. Platz im 50 km Massenstartrennen. Bei den nordischen Skiweltmeisterschaften 2013 im Val di Fiemme kam auf den 86. Rang über 15 km klassisch.