Erstmalig in der Call of Duty-Reihe wird eine durchgehende Handlung erzählt. Das Spiel ist in drei Akte unterteilt. Der russische Ultranationalist Imran Zhakaev hilft dem Terroristen Khaled Al-Asad, die Kontrolle in einem fiktiven arabischen Staat zu übernehmen. Derweil herrscht in Russland ein Bürgerkrieg zwischen den genannten Ultranationalisten (Rebellen) und den Loyalisten. Während man als Amerikaner Sgt. Paul Jackson in Arabien für Ruhe sorgt, greift man als Sgt. "Soap" McTavish für den britischen SAS in Russland und Aserbaidschan ein. Der erste Akt endet damit, dass man als Jackson zusammen mit seinen Kameraden von einem Einsatzort per Helikopter evakuiert wird, da die Einsatzleitung Informationen über eine Atombombe in der Stadt erhalten hat. Aus der geöffneten Heckklappe des Hubschraubers sieht man die Explosion der Bombe; kurz darauf wird der Spieler davon erfasst und stürzt ab. Schwer verletzt schleppt man sich Sekunden später aus dem Wrack bevor man kurz darauf zusammenbricht und stirbt. Al-Asad hingegen ist längst ausgeflogen. McTavish spürt Al-Asad in Aserbaidschan auf. An dieser Stelle wird den SAS-Leuten erst klar, das Al-Asad mit Zhakaev zusammen arbeiten. Für die folgenden zwei Levels, die 15 Jahre vor der Gegenwart spielen, schlüpft man in die Haut von McTavishs Vorgesetzten Cpt. Price. Zhakaev soll in Prypjat, einer Stadt nahe des Kernkraftwerk Tschernobyl, mit einem Scharfschützengewehr getötet werden. Sie treffen jedoch nur seinen Arm und Zhakaev überlebt. Wieder in der Gegenwart, soll man als McTavish, in dessen Rolle man von nun an bleibt, Zhakaevs Sohn gefangen nehmen. Dieser erschießt sich jedoch, als er sich von SAS- bzw. USMC-Leuten umzingelt sieht. Es stellt sich heraus, das der Putsch nur ein Ablenkungsmanöver für einen Raketenstart war. Zhakaev startet nukleare Raketen in Richtung der US-amerikanischen Ostküste. Das Material für den Bau dieser Raketen hat er aus Tschernobyl. In letzter Sekunde kann man die Raketen durch Eingabe von Abbruchcodes in der Luft zerstören. Auf der Flucht schließlich kann man Zhakaev persönlich mit einer Pistole, die einem der sterbende Cpt. Price noch zuschubsen kann, ausschalten. Als McTavish teilt man nicht das Schicksal mit Jackson, sondern wird, nachdem man Zhakaev getötet hat, von russischen Soldaten gerettet und sieht noch, wie alle Wiederbelebungsversuche an Cpt. Price scheitern.
Als Epilog kommt nach dem Abspann noch eine Bonusmission, bei der man einen VIP aus einem von Terroristen entführten und abstürzenden Flugzeug retten muss. Am Ende sprengt einer der Kameraden eine Kabinentür auf und ein anderer schnappt sich den VIP und springt. Nun ist es auch für den Spieler an der Zeit seinen letzten Sprung zu wagen und zu sehen, wie sofort danach das Flugzeug explodiert.