Faits:
A. Le 24 juillet 2008, le Conseil municipal de Sion a accordé à X._ l'autorisation de construire un immeuble d'habitation de 58 logements sur la parcelle n° 820, en zone de centre CII. Le projet comporte trois corps de bâtiment, de cinq étages sur rez plus attiques. L'élément principal longe la rue Ste-Marguerite au sud-est; les éléments secondaires sont contigus, au nord-ouest, aux parcelles n° 13610 et 810; sur cette dernière se trouve l'immeuble Y._, partiellement mitoyen avec le projet. Comme condition à son autorisation, le Conseil communal a prévu la cession de l'angle nord-ouest de la parcelle n° 820 à la parcelle n° 810, afin de préserver la contiguïté sur l'ensemble de la largeur des bâtiments. La surface des attiques ne devrait pas dépasser les 50% de l'étage-type correspondant. L'opposition formée notamment par A._, membre de la PPE Y._, a été écartée.
Par décision du 2 décembre 2009, le Conseil d'Etat valaisan a rejeté le recours formé par A._, lequel avait en outre entrepris plusieurs démarches pour obtenir l'effet suspensif. Le Conseil d'Etat a considéré que la hauteur de la façade principale, de 16,8 m, n'était pas excessive. Compte tenu de leur surface, les combles ne comptaient pas comme étage supplémentaire. Les bâtiments respectaient l'ordre contigu; la partie nord-est de la parcelle n° 820 avait été détachée et constituée en une nouvelle parcelle portant le n° 16546, avec une servitude de contiguïté. Cela correspondait à la condition posée par le Conseil municipal. L'accès aux véhicules d'intervention du service du feu était assuré.
B. Par arrêt du 27 mai 2010, la Cour de droit public du Tribunal cantonal valaisan a rejeté le recours de A._. L'excavation aménagée au sud pour l'accès au garage collectif ne dépassait pas 7 m de largeur, de sorte qu'il n'y avait pas à en tenir compte pour calculer la hauteur du bâtiment. Les combles ne devaient pas compter comme étage, car leur surface brute de plancher (SBP) ne dépassait pas le 50% du niveau inférieur. La création de la parcelle n° 16546 et de servitudes réciproques, permettait d'assurer l'ordre contigu avec le n° 810. Faute de servitude de contiguïté avec la parcelle n° 819 située au sud, le projet respectait la distance à la limite des deux-tiers de la hauteur de la façade; la règle imposant le double de cette distance ne s'appliquait pas. Les façades des corps secondaires du bâtiment respectaient les distances réglementaires. Les espaces libres laissés au sud-est et au sud permettaient d'assurer l'accès aux véhicules du service du feu.
C. Par acte du 26 juin 2010, A._ forme un recours en matière de droit public par lequel il demande l'annulation de l'arrêt cantonal.
Le Tribunal cantonal et la Ville de Sion ont renoncé à se déterminer. Le Conseil d'Etat conclut au rejet du recours dans la mesure où il est recevable. La constructrice B._ conclut à l'irrecevabilité, subsidiairement au rejet du recours. Le recourant a produit une réplique spontanée.

Considérant en droit:
1. Dirigé contre une décision finale prise en dernière instance cantonale dans le domaine du droit public des constructions, le recours est recevable comme recours en matière de droit public selon les art. 82 ss.
1.1 Le recourant a pris part à la procédure de recours devant la cour cantonale. En tant que propriétaire voisin, il est particulièrement touché par l'arrêt attaqué qui rejette ses objections relatives notamment au nombre d'étages admissibles et au respect des distances réglementaires. Il peut ainsi se prévaloir d'un intérêt personnel et digne de protection à l'annulation de l'arrêt attaqué. Sa qualité pour agir au sens de l'<ref-law> est à l'évidence donnée. Les autres conditions de recevabilité du recours en matière de droit public sont par ailleurs réunies de sorte qu'il y a lieu d'entrer en matière.
1.2 Le recourant a pris position sur diverses affirmations faites par les intimés dans leurs déterminations. Il a ainsi exercé son droit de réplique.
1.3 Sauf dans les cas cités expressément à l'<ref-law>, le recours ne peut pas être formé pour violation du droit cantonal en tant que tel. En revanche, le recourant peut faire valoir que la mauvaise application du droit cantonal constitue une violation du droit fédéral, en particulier qu'elle est arbitraire au sens de l'art. 9 Cst. ou contraire à d'autres droits constitutionnels (<ref-ruling> consid. 2.3 p. 466). A cet égard, le Tribunal fédéral n'examine les moyens fondés sur la violation d'un droit constitutionnel que s'ils ont été invoqués et motivés de manière précise (art. 42 al. 2 et 106 al. 2 LTF; <ref-ruling> consid. 3 p. 351 s.).
1.4 Par ailleurs, le recourant ne peut critiquer la constatation de faits que si ceux-ci ont été établis de manière manifestement inexacte ou en violation du droit au sens de l'<ref-law>, notamment en violation de l'interdiction de l'arbitraire (<ref-law>; <ref-ruling> consid. 4.3 p. 62), ce qui signifie que le recourant doit formuler sa critique en respectant les exigences de motivation de l'<ref-law> (<ref-ruling> consid. 1.4.3 p. 254 s.). Selon la jurisprudence, l'appréciation des preuves ou l'établissement des faits sont arbitraires lorsque l'autorité n'a manifestement pas compris le sens et la portée d'un moyen de preuve, si elle ne prend pas en compte, sans raison sérieuse, un élément de preuve propre à modifier la décision ou lorsqu'elle tire des constatations insoutenables des éléments recueillis (<ref-ruling> consid. 2.1 p. 9; <ref-ruling> consid. 2a p. 41). La correction d'un tel vice doit être susceptible d'influer sur le sort de la cause (art. 97 al. 1 in fine LTF). Le Tribunal fédéral n'entre pas en matière sur des critiques de type appellatoire portant sur l'état de fait ou sur l'appréciation des preuves (cf. <ref-ruling> consid. 3 p. 105; <ref-ruling> consid. 1.4 p. 254 s.; <ref-ruling> consid. 6.2 p. 288).
2. Invoquant son droit d'être entendu, le recourant reproche à la cour cantonale d'avoir omis de traiter ses griefs relatifs à la hauteur des façades, en ne s'occupant que du cas de la façade sud alors que le recourant visait également les façades des deux corps secondaires, soit le pan retour de la façade sud et la façade en contiguïté avec Y._.
2.1 Conformément au droit d'être entendu (art. 29 al. 2 Cst.), l'autorité doit indiquer dans son prononcé les motifs qui la conduisent à sa décision (<ref-ruling> consid. 5.5 p. 236). Elle n'est pas tenue de discuter de manière détaillée tous les arguments soulevés par les parties, ni de statuer séparément sur chacune des conclusions qui lui sont présentées. Elle peut se limiter à l'examen des questions décisives pour l'issue du litige; il suffit que le justiciable puisse apprécier correctement la portée de la décision et l'attaquer à bon escient (<ref-ruling> consid. 4.1 p. 88; <ref-ruling> consid. 4.3 p. 540; <ref-ruling> consid. 2b, et les arrêts cités).
2.2 La question de la hauteur de la façade au niveau de l'entrée des garages constituait l'argument principal soulevé dans le recours cantonal, puis dans les compléments des 13 avril et 14 mai 2010. La cour cantonale était dès lors légitimée à traiter cet argument en priorité. Ce faisant, elle n'a pas méconnu l'argument plus général du recourant, qui consistait à affirmer que la hauteur maximale des façades, de 17 m, devait correspondre à la hauteur maximale des bâtiments. La cour cantonale a clairement retenu une solution contraire, puisqu'elle a considéré qu'à partir de la hauteur de sol déterminante, la limite de 17 m n'était pas dépassée, selon le plan des façades produit par le constructeur. Même si l'arrêt attaqué ne le dit pas expressément, le recourant est à même de contester cette appréciation et de faire valoir son interprétation des dispositions règlementaires. L'arrêt attaqué retient également que c'est la façade sud-est qui doit être considérée comme façade principale au sens de l'art. 78 du règlement de constructions et de zones de la commune de Sion (RCCZ), et donc seule à prendre en compte; quoique lapidaire, cette considération répond aux objections du recourant. De ce point de vue, son droit d'être entendu apparaît respecté.
2.3 Le recourant se plaint d'une application arbitraire des art. 95 et 78 ch. a RCCZ. Selon lui, il y aurait lieu de définir la hauteur des deux façades précitées en tenant compte de leur partie supérieure, soit le triangle en maçonnerie situé sous le toit.
2.3.1 Il y a arbitraire, prohibé par l'art. 9 Cst., lorsque la décision attaquée viole gravement une règle ou un principe juridique clair et indiscuté ou lorsqu'elle contredit d'une manière choquante le sentiment de la justice ou de l'équité. Le Tribunal fédéral ne s'écarte de la solution retenue par l'autorité cantonale de dernière instance que si elle est insoutenable ou en contradiction évidente avec la situation de fait, si elle a été adoptée sans motif objectif ou en violation d'un droit certain. Par ailleurs, il ne suffit pas que les motifs de la décision attaquée soient insoutenables, encore faut-il que celle-ci soit arbitraire dans son résultat (<ref-ruling> consid. 2 p. 61 et la jurisprudence citée), ce qu'il appartient au recourant de démontrer en vertu de l'<ref-law> (<ref-ruling> consid. 3.1 p. 265; <ref-ruling> consid. 3.1 p. 153 et la jurisprudence citée).
2.3.2 Selon l'art. 78 let. a RCCZ, dans les zones de centre, la hauteur d'un bâtiment est mesurée au milieu de la façade principale la plus haute. Elle se mesure, sur une verticale, du point le plus bas du sol naturel (ou du sol aménagé s'il est plus bas), jusqu'à l'intersection de la façade avec la ligne supérieure de la toiture. L'art. 95 RCCZ fixe la hauteur de façade maximum à 17 m, pour la zone de centre II. A son consid. 2c - in fine -, la cour cantonale retient que la façade principale, au sens de ces dispositions, est la façade sud-est, parallèle à la parcelle n° 819, en se référant à sa propre jurisprudence. Dans un grief distinct, le recourant prétend ignorer cette jurisprudence; il se réfère pour sa part à une pratique suivie par le Conseil municipal, mais ne démontre pas que la solution retenue par la cour cantonale sur ce point serait arbitraire ou violerait son droit d'être entendu. Une simple lecture des plans permet de confirmer que la façade sud-est, de loin la plus longue et qui comporte deux entrées, peut sans arbitraire être considérée comme la façade principale. Le recourant ne conteste d'ailleurs pas que, pour cette façade, la hauteur, calculée selon les critères de l'art. 78 let. a RCCZ, est bien de 16,8 m. Son argumentation, qui tend à confondre hauteur de façade et hauteur de bâtiment (alors que l'art. 95 RCCZ ne prévoit expressément aucune limite de hauteur de bâtiments pour la zone concernée), tombe par conséquent à faux.
2.4 Le recourant conteste aussi le calcul de hauteur du renvoi ouest de la façade sud. Compte tenu de ce qui précède, l'argument apparaît sans pertinence. Il serait au demeurant mal fondé, car le recourant entend se prévaloir de la description figurant sur le document de vente pour démontrer que le couloir d'accès au parking serait configuré différemment, de sorte que la façade serait entièrement dégagée. Le recourant perd de vue qu'il n'y a rien d'arbitraire à se fonder sur les plans mis à l'enquête plutôt que sur un document émis à des fins publicitaires. Ses griefs relatifs à la hauteur des façades doivent par conséquent être écartés.
3. Le recourant se plaint ensuite, en substance, d'arbitraire dans l'établissement des faits et dans l'application de l'art. 81 let. b RCCZ, disposition qui considère comme étage les combles dont les surfaces utiles dépassent 50% de celles de l'étage correspondant. Alors que le constructeur et la commune se fondaient sur des surfaces de 1092 m2 pour le cinquième étage et 509 m2 pour les combles, ces surfaces seraient de 929 m2 et et 505 m2 selon les calculs du recourant effectués sur la base des plans autorisés. Le tableau joint aux explications du constructeur, le 15 juin 2008, comportait des modifications par rapport aux plans autorisés, ce qui ne serait pas admissible puisque ces plans n'avaient pas été soumis à l'enquête. Devant ces incertitudes, la cour cantonale aurait dû procéder à ses propres calculs ou mandater un expert neutre à cette fin. En se fondant sur la "surface brute de plancher utile", la cour cantonale aurait aussi fait preuve d'arbitraire.
3.1 La cour cantonale a répondu à une partie des arguments du recourant, en relevant que le prospectus de vente ne constituait pas une base suffisante pour évaluer les surfaces brutes utiles des combles et de l'étage correspondant. Les différences de calcul tiennent, selon les explications données par le constructeur, à la manière de répartir les surfaces des appartements en duplex, ainsi qu'à la prise en compte des circulations et escaliers communs de l'immeuble. Dans la mesure où les calculs des constructeurs ont été vérifiés et approuvés par l'autorité communale compétente, le Tribunal cantonal n'avait pas, en l'absence d'indices sérieux d'erreurs et en dépit des objections du recourant, à procéder à ses propres vérifications. Indépendamment des calculs effectués sur la base des plans déposés, le respect de la proportion de 50% entre la surface des combles et de l'étage correspondant constitue de toute façon l'une des conditions fixées par le Conseil municipal à la délivrance du permis de construire et en fait donc partie intégrante. Il appartiendra dès lors à l'autorité d'en vérifier le respect. Au demeurant, la solution consacrée par la cour cantonale s'appuie également sur les prescriptions concernant le règlement des zones (art 95 RCC), qui permettent à la commune, en zone de centre, de fixer le nombre exact d'étages suivant la hauteur de corniche des bâtiments voisins et la déclivité du terrain. De ce point de vue, le projet est parfaitement conforme puisqu'il s'aligne sur la hauteur de corniche des bâtiments existants, notamment celui où habite le recourant. Dans son résultat également, l'arrêt attaqué est conforme aux prescriptions régissant la zone et ne saurait être qualifié d'arbitraire.
4. Le recourant critique encore la création d'une nouvelle parcelle pour supprimer le décrochement au nord de la parcelle n° 820 et permettre le respect de l'exigence de contiguïté. Il estime qu'un tel mode de procéder permettrait de contourner la loi et ne pouvait pas remplacer une cession à la parcelle n° 820, telle qu'exigée dans l'autorisation de construire. Seule une procédure de rectification de limites permettait de parvenir au but recherché. En l'occurrence, la façade nord-est rompt la contiguïté sur plus de trois mètres; la distance à la limite devait alors être doublée.
4.1 Le permis de construire pose notamment comme condition la création d'une nouvelle limite permettant d'assurer la contiguïté, au moyen d'une cession de parcelle. Pour satisfaire à cette condition, une nouvelle parcelle n° 16546 a été détachée du n° 820, ce qui permettrait à son propriétaire de respecter la contiguïté avec le nouvel immeuble. En raison de l'opposition du recourant, la PPE Y._ a refusé de recevoir à titre gratuit cette parcelle. Il n'en demeure pas moins que le constructeur a, par la création et la mise à disposition d'une nouvelle parcelle, ainsi que par l'inscription des servitudes de contiguïté, fait tout ce qui était en son pouvoir pour satisfaire aux conditions posées par la commune. Cette dernière l'a d'ailleurs admis, dans une lettre adressée le 27 juillet 2009 à la cour cantonale. La démarche de la constructrice n'a ainsi rien d'abusif. La situation juridique permettant désormais d'assurer si nécessaire une contiguïté, l'arrêt cantonal n'a rien d'arbitraire sur ce point également.
4.2 Quant au grief relatif au respect de la distance de protection incendie par rapport à la parcelle n° 810 (5 m pour une façade incombustible), il est sans portée dès lors que toute transformation ou agrandissement de l'immeuble situé sur cette parcelle sera, lui aussi, soumis à l'ordre contigu.
5. Le recourant invoque enfin l'art. 58 des prescriptions suisses de protection incendie AEAI, selon lequel les bâtiments doivent garantir un libre accès en tout temps aux services du feu. Le préavis du service du feu était certes positif, mais avec une mention négative concernant les manoeuvres des véhicules des sapeurs-pompiers. Le recourant avait signalé cette contradiction et relevé que l'accès au côté nord était problématique car il se faisait par un tunnel, et que les manoeuvres étaient impossibles de ce côté-ci. La cour cantonale avait limité son examen à l'accès au côté sud, sans répondre aux griefs soulevés, sans ordonner de vision locale et sans interpeller de spécialiste.
Le recourant ne fait que reprendre ses critiques, se fondant sur sa propre interprétation de la norme de sécurité libellée de manière très générale. Il méconnaît que l'Office cantonal du feu s'est prononcé, pendant l'instance de recours devant le Conseil d'Etat, et a expressément considéré qu'en dépit d'un accès extérieur insuffisant, le projet pouvait être autorisé tel quel. Il a émis des réserves sur certains points, et a précisé (sous la rubrique "conditions de l'organe compétent", in fine) qu'il y avait lieu de garantir l'accès aux véhicules lourds du feu sur la façade sud-est. Cette condition posée, il n'a pas exigé que le projet soit adapté pour permettre un meilleur accès en d'autres points du bâtiment. C'est ainsi à juste titre que la cour cantonale a limité son examen à la façade sud-est. Son appréciation sur ce point n'est d'ailleurs pas contestée par le recourant. Compte tenu de l'avis clairement exprimé par l'office spécialisé, les autres objections soulevées par le recourant tombaient à faux et ne nécessitaient ni motivation particulière, ni moyens d'instruction supplémentaires.
6. Sur le vu de ce qui précède, le recours doit être rejeté, aux frais du recourant (<ref-law>). En vertu de l'<ref-law>, le recourant versera à l'intimée B._ une indemnité à titre de dépens.

Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est rejeté.
2. Une indemnité de dépens de 2000 fr. est allouée à l'intimée B._, à la charge du recourant.
3. Les frais judiciaires, arrêtés à 3000 fr., sont mis à la charge du recourant.
4. Le présent arrêt est communiqué aux parties, à la Ville de Sion, au Conseil d'Etat et au Tribunal cantonal du canton du Valais, Cour de droit public.
Lausanne, le 5 octobre 2010
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président: Le Greffier:
Féraud Kurz