Faits:
A. Par arrêt du 27 septembre 2007, la Cour correctionnelle genevoise, statuant sans jury, a condamné X._, pour infractions à l'art. 19 ch. 1 et 2 let. a et b de la loi fédérale sur les stupéfiants, à une peine privative de liberté de sept ans, sous déduction de la détention préventive. Elle a ordonné la confiscation et la destruction de la drogue saisie et du matériel ayant servi à son transport et à son conditionnement, la confiscation et la dévolution à l'Etat des sommes d'argent saisies et la confiscation des objets figurant aux inventaires.
Par arrêt du 7 mars 2008, la Cour de cassation du canton de Genève a rejeté le pourvoi formé par X._.
B. En résumé, la condamnation de X._ repose sur les faits suivants:
B.a Le 3 mai 2006, la police genevoise a appris que A._, qui se trouvait en transit à l'aéroport de Londres, en provenance de Sainte-Lucie et à destination de Genève, transportait de la cocaïne dans ses bagages. A._ a été interpellée le jour même à son arrivée à Genève. Le démontage des parois de ses deux valises a permis la découverte de huit sachets de cocaïne d'un poids total de 1 kg 242 et d'une pureté de 70 %. Interrogée par la police, elle a mis en cause B._ et C._, qu'elle avait pour mission de retrouver à Zurich. B._, qu'elle savait se livrer au trafic de drogue, l'avait recrutée à la demande de C._ et lui avait donné les informations et instructions nécessaires à son voyage et à la remise de la drogue à l'hôtel Splendid, à Zurich. Un dénommé D._ et un tiers resté inconnu lui avaient remis les deux valises et son billet d'avion à Sainte-Lucie.
B.b Le 4 mai 2006, B._ et C._ ont été interpellés par la police zurichoise alors qu'ils se rendaient à l'hôtel Splendid, où C._ logeait depuis le 2 mai 2006. La police a découvert sur lui des tournevis et, dans sa chambre, outre 36'000 fr. en diverses coupures, des sachets de cocaïne, d'un poids total brut de 750 grammes et d'une pureté de 70 %, dissimulés dans les parois d'une valise, de la même manière qu'ils l'avaient été dans les valises de A._.
B._ a admis que, le 26 avril 2006, en provenance de Sainte-Lucie, elle était arrivée à Genève avec deux valises que lui avait remises D._ à Sainte-Lucie et qui contenaient chacune plusieurs centaines de grammes de cocaïne. Elle avait retrouvé C._ le 3 mai 2006 à Zurich et lui avait livré la première valise à l'hôtel Krone. Il avait vendu son contenu de cocaïne, à un tiers inconnu, pour 36'000 francs. Avant son départ de la Jamaïque, C._ l'avait appelée pour lui faire savoir que A._ allait également effectuer un transport de drogue à destination de la Suisse. C._ était le destinataire des quatre valises que toutes deux devaient lui livrer en Suisse.
B.c Le 6 mai 2006, E._ a été appréhendée à l'aéroport de Genève en provenance de la Jamaïque. La police a découvert huit sachets de cocaïne, d'un poids total brut de 1 kg 055, dissimulés dans les renforts de ses valises. Elle a indiqué à la police avoir été recrutée en Jamaïque par F._, surnommé Tufy, et y avoir reçu les deux valises d'un inconnu surnommé Magga. De Genève, elle devait prendre le train pour Zurich où F._ devait la réceptionner.
Alertés par leurs homologues genevois, le même jour, à savoir le 6 mai 2006, les policiers zurichois ont interpellé G._ et X._ sur le quai de la gare de Zurich, où ils attendaient visiblement E._. X._ a admis s'être rendu à la gare de Zurich pour y réceptionner une Jamaïcaine et s'être douté qu'elle pouvait transporter quelque chose d'illégal. Il soutient avoir accepté de rendre ce service à un Jamaïcain nommé F._, dont il ne savait rien, en échange de 1000 francs. Il a déclaré ne pas connaître C._.
B.d Précédemment, le 3 janvier 2005, à l'aéroport de Zurich, X._ avait déjà été intercepté par la police zurichoise. Il y attendait un nommé H._ porteur de 104 cylindres contenant au total 832 grammes de cocaïne. Il avait alors déclaré ignorer ce que transportait H._ et avoir été mandaté par F._, lequel lui avait promis une rémunération de 10'000 francs. Le parquet zurichois avait classé la procédure à son encontre, faute de prévention suffisante.
C. Contre l'arrêt cantonal du 7 mars 2008, X._ dépose un recours en matière pénale devant le Tribunal fédéral. Il conclut à l'annulation de l'arrêt attaqué et au renvoi de la cause à la cour cantonale pour nouveau jugement. En outre, il sollicite l'assistance judiciaire.
D. Le Procureur du canton de Genève a conclu au rejet du recours avec suite de frais alors que la Cour de cassation n'a pas déposé d'observations.
Considérant en droit:
1. 1.1 Le recours en matière pénale peut être interjeté pour violation du droit, tel qu'il est délimité par les art. 95 et 96 LTF. Le Tribunal fédéral applique le droit d'office (art. 106 al. 1 LTF). Il n'est donc limité ni par les arguments soulevés dans le recours ni par la motivation retenue par l'autorité précédente. Il peut admettre un recours pour un autre motif que ceux qui ont été invoqués et il peut rejeter un recours en adoptant une argumentation différente de celle de l'autorité précédente (cf. ATF 130 III 136 consid. 1.4 p. 140). Compte tenu de l'exigence de motivation contenue à l'art. 42 al. 1 et 2 LTF, sous peine d'irrecevabilité (art. 108 al. 1 let. b LTF), le Tribunal fédéral n'examine en principe que les griefs invoqués; il n'est pas tenu de traiter, comme le ferait une autorité de première instance, toutes les questions juridiques qui se posent, lorsque celles-ci ne sont plus discutées devant lui. Il ne peut pas entrer en matière sur la violation d'un droit constitutionnel ou sur une question relevant du droit cantonal ou intercantonal si le grief n'a pas été invoqué et motivé de manière précise par la partie recourante (art. 106 al. 2 LTF).
1.2 Saisi d'un recours en matière pénale, le Tribunal fédéral ne réexamine l'établissement des faits - sous réserve de l'allégation d'une violation du droit au sens de l'art. 95 LTF - que lorsqu'il est entaché d'inexactitude manifeste (art. 97 al. 1 LTF), à savoir d'arbitraire (ATF 134 IV 36, consid. 1.4.1). Le Tribunal fédéral n'entre pas en matière sur les critiques de nature appellatoire (ATF 133 III 393 consid. 6 p. 397).
2. Dans un premier moyen, le recourant dénonce une application arbitraire des art. 340 et 350 CPP/GE en tant que la Cour de cassation aurait outrepassé les limites claires que pose le droit cantonal à son pouvoir d'examen. Il lui reproche d'avoir complété l'état de fait arrêté par les premiers juges sur plusieurs points.
2.1 L'application du droit cantonal est examinée par le Tribunal fédéral sous l'angle de l'arbitraire (ATF 131 I 217 consid. 2.1 p. 219; 128 II 311 consid. 2.1 p. 315 et les arrêts cités). Une décision est arbitraire lorsqu'elle est manifestement insoutenable, méconnaît gravement une norme ou un principe juridique clair et indiscuté, ou encore heurte de manière choquante le sentiment de la justice et de l'équité. A cet égard, le Tribunal fédéral ne s'écarte de la solution retenue que si celle-ci apparaît insoutenable, en contradiction manifeste avec la situation effective, adoptée sans motif objectif ou en violation d'un droit certain. Il n'y a pas arbitraire du seul fait qu'une autre solution paraît également concevable, voire même préférable (ATF 133 I 149 consid. 3.1 p. 153 et les arrêts cités).
2.2 En procédure cantonale genevoise, les arrêts de la Cour correctionnelle peuvent être attaqués par la voie d'un pourvoi auprès de la Cour de cassation genevoise (art. 339 al. 1 let. c CPP/GE). Voie de droit extraordinaire, le pourvoi est ouvert notamment pour violation de la loi pénale (art. 340 let. a CPP/GE), question que la Cour de cassation genevoise examine librement.
S'agissant en revanche de l'établissement des faits et de l'appréciation des preuves, cette autorité n'est pas fondée à substituer, à la manière d'une instance d'appel, sa propre appréciation à celle de la Cour correctionnelle. Elle ne peut annuler l'arrêt attaqué que si la Cour correctionnelle a attribué aux faits une force probante ensuite d'une interprétation absurde, déraisonnable ou incompréhensible. Le pouvoir d'examen de la Cour de cassation genevoise sur ces points est ainsi limité à l'arbitraire. Elle ne doit pas s'engager dans une analyse complète de l'affaire qui lui est soumise; il ne lui appartient pas de remettre en cause le déroulement de l'instruction ni de se livrer à une nouvelle appréciation des témoignages, et elle n'a pas à dire si elle aurait jugé comme l'autorité de jugement. Elle jouit donc du même pouvoir d'examen que le Tribunal fédéral en ce qui concerne l'appréciation de preuves et l'établissement des faits. C'est dire qu'elle est en principe liée par les faits constatés et par les preuves retenues dans la décision attaquée et ne peut donc compléter l'état de fait (ATF 128 I 177 consid. 2 p. 182).
2.3 En l'espèce, le recourant reproche à la Cour de cassation d'avoir complété l'état de fait du jugement de première instance en introduisant les passages suivants:
E._ a reconnu avoir, de 2001 à 2006, soit seule, soit de concert avec D._, C._, X._, F._ et G._ et encore d'autres trafiquants de drogue jamaïcains, participé à plusieurs transports de cocaïne entre la Jamaïque et Londres (arrêt attaqué p. 3).
L'examen de la mémoire du téléphone mobile de X._ a établi qu'entre le 12 janvier et le 1er mai 2006, il avait parlé plus d'une quarantaine de fois à F._, qui se trouvait en Jamaïque. Dix neuf des numéros apparaissant dans les contacts de son téléphone mobile, ou dans son listing rétroactif, sont des numéros de téléphone qu'on retrouve impliqués dans une quinzaine d'investigations menées par les polices vaudoise, neuchâteloise, zurichoise, soleuroise et argovienne dans le cadre de trafics de drogue. Six de ces numéros sont également présents dans la mémoire du téléphone de B._ et apparaissent dans des enquêtes menées dans le canton de Vaud. Entre le 26 avril et le 8 mai 2006, X._ a fréquemment appelé ces numéros de téléphone, comme ceux de C._ et B._. Selon le rétroactif de B._, les 4 et 5 mai 2006, des correspondants allemands ont essayé de l'atteindre une vingtaine de fois. Aux mêmes dates, selon les rétroactifs de C._ et X._, un même correspondant allemand a essayé de les atteindre à neuf reprises (arrêt attaqué p. 4).
X._, F._ et E._ se connaissaient depuis 2001, dans le cadre d'un trafic de cocaïne qui s'effectuait entre la Jamaïque et Londres, soit bien avant janvier 2005 (arrêt attaqué p. 12).
Les trois importations de drogue programmées fin avril/début mai 2006 ont été organisées de concert par C._, F._ et X._, qui se connaissaient comme l'atteste le fait que leurs numéros de téléphone apparaissent dans la mémoire de leurs téléphones mobiles respectifs. Les « mules » B._ et E._ les ont mis en cause dès leur arrestation. Lors de son interpellation à Genève, E._ a spontanément avoué s'être adonnée, depuis 2001, à un trafic de cocaïne entre la Jamaïque et Londres. Elle a nommément mis en cause (...) X._ (...) dans ce trafic international remontant à plusieurs années (arrêt attaqué p. 13).
Entre le 20 avril et le 8 mai 2006, X._ a eu un nombre important d'entretiens téléphoniques avec diverses personnes actives dans le trafic de drogue, dont en particulier C._ et B._. (....). Un numéro de téléphone allemand a appelé X._ et, parallèlement, a tenté de joindre C._ et B._ alors que ceux-ci étaient entendus par la police zurichoise, Le lendemain 6 mai 2006, alors qu'il se rendait à la gare de Zurich pour y accueillir E._, il a été interpellé avec en main un billet manuscrit portant un nom et un numéro de téléphone identique à celui se trouvant sur un billet manuscrit saisi en main de E._. Au moment de son interpellation, la police zurichoise a retrouvé au domicile de X._ (...) trente-trois sachets de drogue (arrêt attaqué p. 16).
Domicilié à Zurich, X._ était à l'évidence un acteur principal et incontournable du trafic de drogue qui s'effectuait entre la Jamaïque et la Suisse, via Londres ou Amsterdam. Il a été nommément mis en cause par C._, E._ et B._. Tous ses liens personnels, remontant à 2001 (...) ne laissent subsister aucun doute sur son implication essentielle dans l'important trafic de drogue international de cocaïne (arrêt attaqué p. 16)
Sur territoire suisse, X._ jouait un rôle clé. Zurich était le point de chute final et la « plaque tournante » de toutes les livraisons de drogue destinées à la vente en Suisse et en Allemagne. Il y recevait toutes les « mules » ainsi que les autres trafiquant organisateurs comme lui. Son activité était celle d'un participant principal et dirigeant (arrêt attaqué p. 16).
C._, F._ et X._ ont programmé ensemble les trois importations de drogue finalisées fin avril/début mai 2006. Précédemment, et depuis 2001 selon E._, (...) X._ avait organisé plusieurs transports de cocaïne entre la Jamaïque et Londre (arrêt attaqué p. 19).
Toutes les personnes arrêtées entre les 3 mai et 6 mai 2006, qui devaient toutes se rejoindre à Zurich où X._ devait les réceptionner, oeuvraient en bande et étaient actives dans une même organisation criminelle (arrêt attaqué p. 19).
X._, F._ et C._ agissaient tous trois de concert, et selon une répartition de rôles équivalente en importance. Tous trois ont entretenu un nombre impressionnant d'échanges téléphoniques les uns avec les autres (arrêt attaqué p. 19).
2.4 Les passages susmentionnés introduisent effectivement des faits qui ne figurent pas dans le jugement de première instance. Ceux-ci ont permis à la Cour de cassation de forger sa conviction quant à la participation du recourant au réseau de trafiquants de drogue. En retenant les faits cités sous consid. 2.3 et en complétant ainsi l'était de fait de première instance, la Cour de cassation est donc clairement sortie du rôle qui lui est assigné par le code de procédure pénale genevois. Elle a en conséquence appliqué de manière arbitraire le droit de procédure cantonal.
3. Le recours doit être admis pour ce motif, sans qu'il soit nécessaire d'examiner au surplus si la Cour de cassation a établi de manière arbitraire les faits, si elle a violé le droit d'être entendu et si elle a mal appliqué les art. 19 LStup ainsi que 69 et 70 CP, comme le soutient encore le recourant.
Comme le recourant a obtenu gain de cause, il ne sera pas perçu de frais et le canton de Genève lui versera une indemnité de dépens (art. 68 al. 1 et 2 LTF). La demande d'assistance devient ainsi sans objet.
Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est admis, l'arrêt entrepris est annulé et la cause est renvoyée à la cour cantonale afin qu'elle rende un nouveau jugement.
2. Il n'est pas perçu de frais.
3. Le canton de Genève versera au recourant une indemnité de 3000 francs à titre de dépens.
4. Le présent arrêt est communiqué aux parties et à la Cour de cassation du canton de Genève.
Lausanne, le 2 juillet 2008
Au nom de la Cour de droit pénal
du Tribunal fédéral suisse
Le Président: La Greffière:
Schneider Kistler Vianin