Faits: A. X._, ressortissant portugais né en 1974, est arrivé en Suisse en 1994. Il a obtenu une autorisation de séjour, puis d'établissement. Par jugement du Tribunal correctionnel de l'arrondissement de la Broye et du Nord vaudois du 19 mai 2004, X._ a été reconnu coupable d'actes d'ordre sexuel avec des enfants, de contrainte sexuelle et de pornographie. Il a été condamné à quatre ans de réclusion ainsi qu'à l'expulsion du territoire suisse pendant huit ans. Par arrêt du 17 novembre 2004, le Tribunal cantonal vaudois a rejeté le recours interjeté contre ce jugement. Le 2 mai 2005, le Tribunal fédéral a rejeté le recours de droit public et le pourvoi en nullité formés contre cet arrêt. Le prénommé a commencé à purger sa peine privative de liberté le 18 mai 2004, le terme étant fixé au 25 avril 2008. Le 4 mai 2005, l'Office fédéral des migrations a prononcé à l'encontre de X._ une interdiction d'entrer en Suisse. X._ a formulé une demande de libération conditionnelle, qui a été rejetée par prononcé de la commission de libération conditionnelle du 6 décembre 2006. Le prénommé a déféré cette décision au Tribunal cantonal, qui l'a débouté par arrêt du 16 février 2007. X._ a déposé une demande en révision du jugement du 19 mai 2004, laquelle a été rejetée par arrêt du Tribunal cantonal du 30 mars 2007. Par décision du 31 août 2007, le Département de l'intérieur du canton de Vaud (ci-après: le Département) a ordonné l'expulsion administrative de X._ et révoqué son autorisation d'établissement, avec effet à compter de sa libération, pour une durée indéterminée. L'expulsion était fondée sur l'art. 10 al. 1 lettre a de la loi fédérale du 26 mars 1931 sur le séjour et l'établissement des étrangers (LSEE; en vigueur jusqu'au 31 décembre 2007) ainsi que l'art. 5 de l'annexe I de l'Accord du 21 juin 1999 entre la Confédération suisse, d'une part, et la Communauté européenne et ses Etats membres, d'autre part, sur la libre circulation des personnes (ALCP; RS 0.142.112.681; ci-après: l'Accord sur la libre circulation). Le 4 janvier 2008, une nouvelle demande de libération conditionnelle a été rejetée par le juge d'application des peines. B. X._ a déféré la décision du 31 août 2007 au Tribunal cantonal vaudois, qui a rejeté le recours par arrêt du 26 mars 2008. La Cour cantonale a considéré qu'il existait un "risque concret que [le recourant] veuille se venger de ses victimes ou récidive, faute pour lui d'avoir coopéré au traitement psychiatrique ordonné par l'autorité de jugement". Par conséquent, le maintien de la présence en Suisse du recourant comportait une menace pour l'ordre et la sécurité publics justifiant son expulsion. Sous l'angle de l'art. 8 de la Convention de sauvegarde des droits de l'homme et des libertés fondamentales du 4 novembre 1950 (CEDH; RS 0.101), le Tribunal cantonal a relevé que le recourant s'était marié en 2002 avec une compatriote titulaire d'une autorisation d'établissement. Selon la jurisprudence applicable au conjoint étranger d'un ressortissant suisse, une condamnation à deux ans de privation de liberté constituait la limite à partir de laquelle, en général, il y a lieu de refuser l'autorisation de séjour. Cette règle valait même lorsqu'on ne peut pas - ou difficilement - exiger du conjoint qu'il quitte la Suisse, car, lorsque l'étranger a gravement violé l'ordre juridique suisse et a ainsi été condamné à une peine privative de liberté de plus de deux ans, l'intérêt public à son éloignement l'emporte généralement sur son intérêt privé - et celui de sa famille - à pouvoir demeurer en Suisse. Dans le cas particulier, le mariage du recourant était postérieur au 31 octobre 2002, alors que la plainte pénale à l'origine de sa condamnation avait été déposée le 24 juillet 2002, de sorte que son épouse ne pouvait ignorer sa situation et devait prendre en compte le risque qu'il doive quitter la Suisse. C. Agissant par la voie du recours en matière de droit public, X._ demande au Tribunal fédéral, principalement, de réformer dans le sens des considérants l'arrêt du Tribunal cantonal du 26 mars 2008 et, subsidiairement, de l'annuler et de renvoyer la cause à l'autorité intimée pour qu'elle complète l'instruction et rende un nouveau jugement dans le sens des considérants, le tout sous sui- te de dépens. A titre préalable, il requiert que son recours soit doté de l'effet suspensif et demande à bénéficier de l'assistance judiciaire. L'autorité intimée, le Département et le Service de la population du canton de Vaud renoncent à se déterminer sur le recours. L'Office fédéral des migrations propose de le rejeter. Par ordonnance du Président de la IIe Cour de droit public du Tribunal de céans du 24 avril 2008, la requête d'effet suspensif a été admise.