Dies ist eine sehr schwierige Frage. Die Antwort "unendlich viele" ist nicht ganz korrekt. Farben sind nämlich keine physikalischen Größen, sonder subjektive Sinneseindrücke. Den Farbraum, welches ein "typisches" (wenn es das gibt :-)) menschliches Auge wahrnehmen kann, wird in einem sogenannten CIE-Diagramm aufgetragen (s. z.B. http://www.rp-photonics.com/img/CIE1931.jpg).
Die Farbwahrnehmung findet beim Menschen durch sog. Rezeptoren in der Netzhaut statt. Es gibt hier die "Zapfen" welche den Farbton, und die "Stäbchen" welche die Helligkeit wahrnehmen. Man sagt, dass der Mensch mit diesen Rezeptoren ca. 20 Mio. Farben unterscheiden kann. Da dies aber außerordentlich viele sind, vermag die Psychologie des Menschen sich auf die vier Farbtöne Rot, Grün, Blau und Gelb zu beschränken.
um auf die Antwort von z_Blackblue einzugehen: Das ist nicht richtig. Nicht jede Farbe lässt sich durch eine Wellenlänge des sichtbaren Lichtes darstellen. Nur die Farben, welche auf dem CIE-Diagramm auf der Parabelförmigen Außenlinie liegen, lassen sich tatsächlich durch eine einzige Wellenlänge darstellen. Alle anderen Farben entstehen durch Überlagerung mehrerer Wellen des Lichtes, i.A. durch breite Bandenspektren.