Will Graham
Will Graham
Gender: Male
Portrayed By: William Petersen
Edward Norton
First Appearance: Manhunter

Will Graham is a fictional character and the protagonist of Thomas Harris's 1981 novel Red Dragon. He is an FBI profiler responsible for the original capture of the serial killer Hannibal Lecter, and the man who is assigned to locate serial killer Francis Dolarhyde. In both the text and film adaptations, the character is explicitly identified as having a photographic memory rivaling Lecter's.

Other than passing mentions in Harris' sequel The Silence of the Lambs, he does not appear in any other book of the Lecter series. In the film adaptations Manhunter and Red Dragon, he is portrayed by William Petersen and Edward Norton, respectively. In the television series Hannibal, he is portrayed by Hugh Dancy.


Graham has been portrayed twice in movies; in Manhunter by William Petersen and again in Red Dragon by Edward Norton.

The 2002 film version of Red Dragon changes the nature of his connection to Lecter; while in the novel he met Lecter for the first time while questioning him about the death of a patient, in the film he and Lecter have apparently known each other for some time, with Graham often consulting Lecter on several of his cases until intuiting Lecter's true nature as a killer they have been 'collaborating' to track. The film also avoids Graham's facial disfigurement, the final scene depicting him as having survived Dolarhyde's attack relatively unharmed apart from some flesh wounds that heal with no visible ill effects.

Hannibal Lecter Films vte
Films ManhunterThe Silence of the LambsHannibalRed DragonHannibal Rising
Characters Hannibal LecterWill GrahamClarice StarlingFrancis DolarhydeBuffalo BillFrederick ChiltonJack CrawfordFreddy LoundsMason Verger

Ad blocker interference detected!

Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.