Dès la première version du langage Lisp, la notion de liste est fondamentale. C'est une structure de données extrêmement flexible et utile pour un grand nombre d'usages.
Les listes Common Lisp sont des listes simplement chaînées. La plupart des langages de programmation existants permettent l'implémentation de ce type de listes mais Common Lisp a l'avantage d'offrir une grande quantité de fonctions prédéfinies pour leur manipulation.
Les listes, les tableaux et les tables de hachage sont tous des types concrets ou des types d'implémentation. Ce sont des types que l'on utilise entre autre pour implémenter des types abstraits (voir chapitre 27). En Common Lisp, les listes et les vecteurs (tableaux à une dimension) sont des sous-types du type séquence (sequence), à savoir une suite ordonnée d'objets arbitraires.