Гамлет не может мстить, потому что в принципе не считает месть правильным поступком, потому что не имеет воли на это.
Гамлет хотел показать всем виновность Клавдия и только после - покарать.
Формальная причина : пьеса была бы одноактная, если бы после откровения духа Гамлет бы покарал Клавдия, а несоблюдение рамок в шекспировское время невозможно.
Гамлет - мыслитель. Если бы он убил короля во время молитвы, то король бы попал в рай, а вот если бы собрался убить во время совершения реального греха, то тот оказался бы в аду( причем без покаяния).
Гамлет - единственный, кто действует против короля и всего датского двора. Желая справедливости, он убивает Полония ( из окружения короля), далее - короля выручает молитва, а в конце трагедии Шекспира короля он все-таки убивает
Гамлет знает, что умрет. И он не думает о мести, и не выполняет желание тени. Герой умер, потому что отрава в его крови, что он не может жить и уже почти находясь в могиле, умирая, Гамлет убивает короля.
-----------
Шекспир " Гамлет. "