The ending of Braid was very unexpected to me.
“Tim is a man searching for a princess who "has been snatched by a horrible and evil monster. His relationship with this princess is vague at best, and the only clear part of this relationship is that Tim has made some sort of mistake which he hopes to reconcile or, if possible, erase.
As one progresses through the six worlds in Braid, storyline text at the beginning of each world provides further insight into Tim's quest for the princess.
The final level, in which everything but Tim moves in reverse, depicts the princess escaping from a knight, and working together with Tim to surpass obstacles and meet at her home. Tim is suddenly locked out of the house, and, as time progresses forward, reversing Tim's actions, the events show the princess running from Tim, setting traps that he is able to evade, until she is rescued by the knight. Tim is revealed to be the "monster" the princess is running from.”
-edit: Forgot to mention that the story is actually about the detonation of a nuclear bomb, or not.
Also Inside. That giant people meat blob in the end had me shout out "WTF!!!" a couple of times.