TL;DW:
Prologue - Temeria - The game begins with Geralt in a Temerian prison for the assassination of King Foltest. During an interrogation by Vernon Roche, the commander of the Blue Stripes (Temerian special forces), Geralt tells him that he witnessed Foltest's assassination at the hands of another witcher, who escaped with the help of the Scoia'tael. Roche believes you, and helps you escape with Triss Merigold to the river city of Flotsam.
Chapter I - Flotsam - After arriving, Geralt, Triss, and Roche are attacked by Iorveth, the leader of the Scoia'tael, but manage to escape. Upon arriving, Geralt agrees to help kill a giant monster disrupting the town's trade routes. With the help of the sorceress Sile de Tansarville, Geralt manages to kill the monster. You learn the assassin, Letho, has turned against the Scoia'tael and has kidnapped Triss. At this point you can side with Iorveth or Roche, which drastically changes the next chapter.
Chapter II (Iorveth) - Vergen - A battle breaks out between rebels and King Henselt of Kaedwen, and a curse is unleashed on the battlefield. The group manages to escape to the city of Vergen with the rebels thanks to the sorceress Philippa Eilhart. Philippa tells Geralt that Triss is being held by members of the kingdom of Nilfgaard who are working with Henselt. Geralt heads to the Nilfgaard camp but is taken captive. Roche helps Geralt, but the ambassador escapes with Triss. Geralt manages to break the battlefield curse. Henselt's army attacks Vergen, but is held off by Geralt, the Scoia'tael, and the rebel leader Saskia, who is actually a dragon taking human form, and is currently under mind control by Philippa. They all head to Loc Muinne for a summit of royal leaders.
Chapter II (Roche) - Kaedwen Camp - A battle breaks out between rebels and King Henselt of Kaedwen, and a curse is unleashed on the battlefield. The group manages to escape to the Kaedweni camp with Henselt where many in the camp are conspiring against Henselt because of his allegiance with Nilfgaard. Geralt learns that Triss is being held by Nilfgaard, but they escape. Geralt helps break the curse, which Henselt tells Geralt came from a witch he burned at the stake. Geralt saves Henselt from 2 witcher assassins, and learns that both Sile de Tansarville and Philippa Eilhart are working with the assassins. King Henselt kills Roche's Blue Stripes after learning that Roche helped spread the rumors about Henselt conspiring with Nilfgaard. Henselt defeats the rebels, and you can allow Roche to either kill or spare King Henselt. Geralt and Roche head to Loc Muinne to locate Sile, Philippa, and Letho.
Chapter III (Iorveth) - Loc Muinne - Geralt and Iorveth find Philippa imprisoned. You can either go rescue Triss or help Philippa escape and she will give you a dagger than can break the mind control she put on Saskia. During the meeting of leaders, it's revealed that Sile, Philippa, and the other mages put Saskia under mind control to use her dragon abilities so they re-establish the mage Conclave and hired Letho and the other assassins to kill the kings and weaken the countries. After tracking Sile and learning that Letho has betrayed her, the dragon attacks, which you can kill or use the dagger (if you got it) to break the mind control on Saskia.
Chapter III (Roche) - Loc Muinne - Geralt and Roche learn that King Foltest's kids were kidnapped and one died in the process (no mention of Adda from the first game). You can either go rescue Triss or Anais, Foltest's daughter. Anais is then either returned to Temeria or given to King Radovid of Redania for protection. After tracking Sile and learning that Letho has betrayed her, the dragon attacks, which you can kill or leave critically wounded (in Roche's path, you never learn the dragon is Saskia).
Epilogue - If you chose to rescue Triss, the mage Conclave is re-established. If you didn't, Letho blames the assassinations on the sorceresses and a witch hunt begins, and Triss gets rescued by Letho. Letho tells Geralt that they used to be allies. He also reveals that all of this was a plot of the Nilfgaard Emperor to de-stabilize the region through assassinations, in preparation for an invasion, which Letho agreed to in return for his Witcher School to be rebuilt. Geralt regains some of his lost memory, and remembers that he and his lover, the sorceress Yennefer, had nearly been killed long ago before being saved by Geralt's adopted daughter Ciri, who is a source, much like Alvin in the first game. The Wild Hunt, a group of spectral wraiths, appeared and abducted Yennefer because they wanted her power, with Geralt and Letho in pursuit. Geralt exchanged himself for Yennefer, leaving Letho to care for Yennefer. Geralt later escaped The Wild Hunt and showed up near death with no memory, which is where the first game began. Letho tells Geralt that Yennefer is now being held in Nilfgaard.
Ending Cutscene - Nilfgaard has begun their invasion into the north, moving quickly and destroying villages in their way.