Tragedija govori o dogodkih na danskem dvoru po smrti kralja Hamleta. Njegovemu sinu, ki mu je prav tako ime Hamlet, se prikaže duh starega kralja in od njega terja maščevanje, saj mora Hamlet po plemiških načelih maščevati očetovo smrt in izdajo v družini. Vdova Gertruda se je namreč komaj mesec po smrti moža, ki naj bi ga ljubila, poročila s svakom Klavdijem, kraljevim morilcem. Hamletu duh zabiča, naj se materi ne maščuje. Hamlet z maščevanjem odlaša in hlini norost, saj se hoče najprej prepričati, če je stric Klavdij res zagrešil umor. Tako izgubi mnogo priložnosti, v dokončno Klavdijevo krivdo pa se prepriča ob igri mišnici, ko igralci uprizorijo prizor, podoben umoru kralja. Hamlet se tudi zavestno odpove svoji ljubezni, hčerki dvorjana Polonija Ofeliji, ki ga je na očetovo željo zavračala. V prepiru z materjo po nesreči ubije dvorjana Polonija, Ofelijinega in Laertovega očeta. Ofeliji se zmeša in kasneje naredi samomor. Klavdij sluti, da mu je Hamlet nevaren (tudi zaradi tega, ker po pomoti ubije Polonija, ki prisluškuje za zaveso), zato se ga skuša odkrižati. V spremstvu izdajalskih Hamletovih prijateljev Rozenkranca in Gildensterna ga pošlje v podložno Anglijo izterjat davke. Tam naj bi ga ubili, vendar Hamlet prevaro spregleda in se vrne nazaj, Rozenkranca in Gildensterna pa prepusti Angležem. Na pokopališču z zvestim prijateljem Horacijem prisostvujeta pogrebu Ofelije. Skoraj se spopadeta z njenim bratom Laertom, ki Hamleta krivi sestrine smrti. Ustavi ju kralj, ki Laerta nagovori, naj se na videz pobota s Hamletom, v resnici pa se mu bo lahko maščeval med uradnim prijateljskim dvobojem. Laert dobi oster meč namesto topega, za povrh pa je kralj Hamletu pripravil še zastrupljeno vino. Kraljica med borbo izpije vino, Laert pa rani Hamleta. Nato med borbo zamenjata meče in še Hamlet zabode Laerta. Ko kraljica umre, Laert prizna zaroto. Hamlet ubije kralja in z Laertom se pred smrtjo pobotata. Tedaj se iz vojaškega pohoda vrne norveški vojskovodja Fortinbras. Hamletove zadnje besede so, naj danski prestol zasede on.