iostream.h et iostream sont juste deux versions de la même chose.
A priori il n´y a pas de différence dand les fonctions qui sont appellé, mais iostream mets les fonctions dans l´espace de nom std ( alors que iostream.h le mets dans l´espace globale) et la différence de nom du ficheir d´en tête sers à ce que les programmes qui utilise l´ancienne version ne puisse pas se compiler uniquement avec la nouvelle version, pour éviter des erreurs.