Director Franco Zeffirelli reportedly wanted Mel Gibson for the title role after seeing his near-suicide scene in Lethal Weapon (1987).
Mel Gibson founded his production company "Icon Productions" to raise the financing for this movie, as no major studio wanted to back a Shakespearean movie.
Glenn Close, who plays Gertrude, Hamlet's mother, is only nine years older than Mel Gibson, who plays her on-screen son. This actually represents an improvement over the age difference between the actor and actress playing Hamlet and Gertrude in Hamlet (1948), in which Sir Laurence Olivier (Hamlet) was almost eleven years older than Eileen Herlie, who played Gertrude.
This was the first Shakespearean role that Glenn Close had ever attempted on either stage or screen.
In this version, Hamlet's (Mel Gibson's) "To be or not to be" speech comes after his meeting with Ophelia (Helena Bonham Carter) (the "get thee to a nunnery" speech). Shakespeare has the monologue directly before their meeting.
The play uses the words "honest" and "honesty" many times, because the drama carries the themes of both honorableness and truthfulness/deceit. When Hamlet asks Ophelia if she is honest, that word, in Shakespeare's time, first meant honorable, and secondly meant truthful. He was asking if she was good. When he asks her if she is fair, he doesn't ask whether she considers herself impartial and principled, but whether she considers herself beautiful. Of course, Hamlet uses puns all the time, so the audience should anticipate all possible meanings of his words.
Mel Gibson's only previous Shakespeare experience was playing Juliet in an all male production of "Romeo and Juliet" in Australia. By contrast, Sir Alan Bates (who played Claudius) had played Hamlet in London in 1970 and Paul Scofield (who played the Ghost) had played the part in 1948 and 1955, and is considered one of the greatest twentieth century interpreters of the role.
Dunottar Castle, just South of Aberdeen was used for exterior shots and a helicopter was used to fly in large section of scenery to alter the castles silhouette , although some exterior shots were filmed near the castle an extra set was built near the village of Muchalls two mile from Dunottar for most of the castle exterior shots.
This and other film versions of Hamlet have a U.K. U-certificate movie certifying they are suitable for all audiences. Nonethelss, there is a pun on the "c" word when Mel Gibson as mad-Hamlet talks of "country matters" to Ophelia.
About Hamlet's famous "To be or not to be" monologue, many critics have complained for decades about the line: "Whether 'tis nobler in the mind to suffer the slings and arrows of outrageous fortune, or to take arms against a sea of troubles, and, by opposing, end them?" The complaint is that Hamlet is mixing metaphors: Fortune (Fate) does not actually shoot arrows at people, and you can't use your swords against the sea. The assumption seems to be that Shakespeare was too tired, or too lazy, to fit metaphorical causes with metaphorical effects. Shakespeare (and therefore Hamlet) were too smart to be that sloppy in their speech. Hamlet is complaining that these forces (fate and the ocean) are precisely too abstract, too formless, too monstrous, and too inhuman for a human to use weapons against - arrows against a vague idea such as Fortune, or swords and knives against an ocean. You can't fight on those levels. Hamlet was grieving, but he was never stupid.
In the Italian version, Mel Gibson's voice was dubbed by Giancarlo Giannini. Franco Zeffirelli personally chose Giannini.
During pre-production, it was mentioned that Sir Sean Connery would be playing the ghost of Hamlet's father, who was eventually played by Paul Scofield.
Sir Alan Bates, who plays Claudius, previously played Hamlet on stage. Sir Derek Jacobi, who played Claudius in Sir Kenneth Branagh's Hamlet (1996), also previously played Hamlet. Kyle MacLachlan, who played Claudius in Hamlet (2000), played a Hamlet-like character in Dune (1984). The roles of Jessica and Irulan in that film were originally offered to Glenn Close and Helena Bonham Carter, who play equivalent characters here (the mother and love interest of the lead character).
In 1979, Franco Zeffereli announced that he would be staging "Hamlet" in Los Angeles, with Richard Gere in the title role, and Jean Simmons as Gertrude, E.G. Marshall as Polonius, and Amy Irving as Ophelia, but it was cancelled.
The cast includes two Oscar winners: Mel Gibson and Paul Scofield; and five Oscar nominees: Glenn Close, Sir Alan Bates, Helena Bonham Carter, Sir Ian Holm, and Pete Postlethwaite.