The Witcher 2: Assassins of Kings picks up shortly after the events in the original game. Geralt has been essentially drafted as King Foltest's personal bodyguard and the king is engaged in a battle with troops loyal to his mistress, the Baroness Mary Louisa La Valette after what can best be described as a lovers' spat.
Over the course of the game, the paths available to Geralt multiply. The two major paths follow Geralt's choice of ally: Vernon Roche or Iorveth. This choice has the greatest impact on how the game develops, but before making this choice, he must decide what to do about Aryan La Valette.
The Prologue opens with Geralt in chains in the La Valette dungeon. He is soon dragged out for interrogation by Vernon Roche, leader of the Temerian Special Forces known as the Blue Stripes. We then learn that the witcher has been accused of killing King Foltest and it is up to him to convince Roche of his innocence. The rest of the prologue serves as a game tutorial as Geralt recounts the events leading up to the king's demise and his incarceration.
While storming the castle with Foltest's men, Geralt must decide whether to force Aryan La Valette to surrender or kill him. If Aryan surrenders, Geralt must help him in the dungeon. If Aryan dies, then the witcher must help Aryan's mother, and Foltest's mistress, Mary Louisa La Valette.
Geralt must then escape the dungeon and meet up with Roche and Triss. The trio then set off by boat for Flotsam.
Having arrived near Flotsam, the last known location of Iorveth and his commandos. The witcher, accompanied by Roche and Triss, makes his way into town only to encounter Iorveth and his elves along the way. Triss manages to cast a protective spell but at some cost to herself.
Upon arrival at their destination, the witcher finds two of his best friends, Dandelion and Zoltan, on the Flotsam scaffold, about to be hanged. He must negotiate their release by dealing with the local commandant, Bernard Loredo.
While in town, Geralt learns that the port is menaced by a huge beast, the kayran. The beast must be dealt with before anyone can leave town. This is when the witcher meets another sorceress, Síle de Tansarville, who is also hunting the beast.
Triss is kidnapped by Letho, so Geralt sets off to find her and the kingslayer, but he cannot go on alone, so he must decide between Roche and Iorveth.
Having made his choice to follow either Vernon Roche or Iorveth, Geralt arrives in Aedirn, just in time for a battle between King Henselt's troops and the dwarven city of Vergen. Then depending on his alliance, he will either be based in the dwarven city itself, or in Henselt's army camp.
While in Aedirn, the witcher either meets a third sorceress: Philippa Eilhart, or a sorcerer: Dethmold. Also, Geralt learns of a curse cast over the site of a battle three years prior. This curse must be lifted before he can proceed.
Geralt finds news of Triss only to have her slip through his fingers once more, so he must continue his search for her and heads off to Loc Muinne where she is being taken by the Nilfgaardians.
Several choices face Geralt in the final chapter of the game. If he has followed Iorveth this far, the witcher must decide whether to save Triss from the Nilfgaardians, or Philippa Eilhart from the Redanians. If he has followed Roche this far, then he must decide between Triss or saving Anaïs La Valette from the Kaedwenis.
He is also faced with the dilemma of whether or not to kill a dragon.