Haniyeh a été assassiné tôt dans la journée du mercredi dans sa résidence à la capitale Téhéran dans une mystérieuse attaque que les officiels iraniens ont imputée à Israël, l'ennemi juré de l'Iran. Le garde du corps de Haniyeh a également été tué lors de l'assassinat.
Haniyeh était à Téhéran pour assister à l'investiture du nouveau président iranien, Masoud Pezeshkian.