I have had a DVD copy of Source Code on hand for some time now but I decided to pop it in the VCR today.
Verdict: I have decided this could have been a really good movie but, alas, it is just okay.
About two decades ago, I was a huge Doom addict and a major part of the appeal of that game was getting killed over and over again but each time learning enough to eventually complete a level. And I thought it would be really cool if you could actually send a soldier into a dangerous situation, have him do recon, and then, when he inevitably gets killed, reboot him and have him do it again. It is a peculiar but beguiling brand of invulnerability.
And I thought the movie could have done with a lot more of that. For instance, I wish Captain Colter Stevens (as played by Jake Gyllenhaal)'s deaths and reboots had been more visceral. Further, I could have done without the exposition - where Stevens asks and is told stuff. In fact, I could have done without all of Stevens' back story because it is irrelevant to moving the story forward. Ditto for the "boy-meets-girl" subplot involving Michelle Monaghan. The whole enterprise could have been moved forward strictly by what Stevens learns during his eight minute source code sorties.
What should be the focus of the movie - finding a mad bomber - is actually a "McGuffin" - as the filmmakers appear more interested in questions of dying, existence, unfinished business and "what is fate?" - big questions all - but questions that have no business in this movie. I wish the filmmakers had trusted the audience more. Or, perhaps, I wish they had trusted us less.
Some of the problem, I suspect, is the casting of Gyllenhaal. As blasphemous as this sounds, this would have been a much better movie if Keanu Reeves had been cast as Captain Stevens. This movie requires Reeves' blank, zen-like athleticism. There is almost too much going on in Gyllenhaal's eyes; in his face.
The same can be said of Vera Farmiga's casting as Air Force Captain Goodwin. As an actress, she is so intelligent and sensual, her face is so full of "stuff," that like Captain Stevens, you just want to know more about her and it is distracting.
Michelle Monaghan, however, is perfectly cast as Christina Warren, the girl Stevens meets on the train. She is so centered and present that you will believe a man would die for her - and do it again, over and over, until he finds a way to save her.