Faits: A. X._, né en 1944, et Y._, née en 1962, se sont connus à Genève en 1993. Le 23 juillet 1994, Y._ a donné naissance à un garçon, prénommé Z._. X._ a reconnu l'enfant devant l'officier d'état civil le 4 août suivant. X._ et Y._ se sont mariés le 5 mai 1995. Par jugement du 27 mai 2008, confirmé par arrêt de la Cour de justice du 16 octobre 2009, le Tribunal de première instance de Genève a prononcé leur divorce. B. Le 3 octobre 2008, X._ a formé une action en désaveu de paternité. Il a demandé qu'il soit constaté qu'il n'est pas le père biologique de l'enfant et que les rectifications nécessaires soient effectuées dans les registres de l'état civil. La mère et l'enfant, représenté par son curateur, se sont opposés à la demande. Par jugement du 3 décembre 2009, le Tribunal de première instance de Genève a constaté la non-paternité de X._. Il a examiné la demande au regard des dispositions sur la contestation de la reconnaissance de paternité, dès lors que le demandeur avait reconnu l'enfant après sa naissance. Le 28 mai 2010, sur appel de la mère, la Chambre civile de la Cour de justice a annulé ce jugement et rejeté l'action en désaveu de paternité, respectivement en contestation de la reconnaissance de paternité, pour le motif qu'elle était périmée. C. Par écriture du 2 juillet 2010, X._ exerce un recours en matière civile au Tribunal fédéral. Il conclut à l'admission de son action en désaveu de paternité, respectivement en contestation de la reconnaissance de paternité, et aux rectifications utiles en matière civile. Y._ et Z._, représenté par son curateur, proposent tous les deux le rejet du recours. L'enfant sollicite en outre l'assistance judiciaire limitée à la dispense des frais et dépens judiciaires. La Cour de justice se réfère à ses considérants. 