En octobre 1967, il fut décidé qu'à la suite de la première mission habitée destinée à tester le module de commande, Apollo 7, la seconde mission habitée (« mission D ») devait tenter le lancement du module de commande sur Saturn IB, puis le module lunaire sur une seconde fusée spatiale Saturn IB pour effectuer une manœuvre de rencontre en orbite. McDivitt, Scott et Schweickart furent affectés à cette mission, puis Frank Borman, Jim Lovell et William Anders se virent destinés à une mission similaire (« mission E ») qui devait cette fois utiliser un lanceur Saturn V.
Cependant, des problèmes de production retardèrent la préparation du LM, ce qui aurait retardé le déroulement de la mission D au printemps 1969. Une « mission C prime » fut alors décidée, qui impliquerait le module de commande seul, pour effectuer un vol habité jusqu'à la Lune. Les équipages (et les équipages suppléants) des missions C et D furent échangés. La mission C prime devint Apollo 8, menée par Borman, Lovell et Anders. La mission E fut finalement annulée : Apollo 9 serait le seul essai en orbite du système complet et utiliserait un unique lanceur Saturn V au lieu de deux Saturn IB.
La mission Apollo 9, qui emportait pour la première fois tous les éléments destinés à se poser sur la Lune, était pour l'essentiel destinée à tester les manœuvres impliquant le module lunaire. Pendant dix jours, les astronautes devaient placer les différents éléments en orbite, puis arrimer ou détacher le module lunaire, ce qu'ils devraient faire pour le poser sur la Lune puis le récupérer. Apollo 9 apporta la confirmation que la technologie développée pour le programme était prête à la mission.
À partir de ce vol, l'équipage put choisir un surnom pour leur vaisseau. Le module lunaire fut surnommé « Spider » et le module de commande « Gumdrop » — d'après la bâche bleue dans laquelle il arriva au centre spatial Kennedy.
Schweickart et Scott effectuères des EVA — Schweickart vérifia la nouvelle combinaison, qui embarquait ses propres systèmes plutôt qu'un lien au vaisseau, alors que Scott le filmait depuis un hublot du système de commande. Schweickart devait effectuer quelques tests sur la combinaison, en particulier pour s'assurer qu'une sortie sur la Lune était possible. D'autres vérifications devaient confirmer la possibilité de l'usage des combinaisons en cas d'urgence, mais il fut atteint du mal de l'espace et cessa les essais.
McDivitt et Schweickart testèrent le LM en essayant les manœuvres de séparation et d'arrimage en orbite. Ils éloignèrent le LM à 178 km du Gumdrop avec son moteur de descente, puis revinrent avec le moteur ascensionnel.
L'amerrissage eut lieu à 23°15'N, 67°56'W, à 290 km des Bahamas. Le vaisseau fut récupéré par l'USS Guadalcanal.
L'équipage chanta Happy Birthday To You le 8 mars 1969.