Faits:
A. Le 14 juin 2004, B._ a déposé une plainte pénale auprès du Juge d'instruction du canton de Vaud, expliquant que le compte de l'un de ses clients à Curaçao avait été frauduleusement débité de 660'000 USD au total. Cet argent était parvenu sur le compte de la société uruguayenne A._ auprès de la banque X._. Les 14 et 16 juin 2004, le Juge d'instruction a bloqué ce dernier compte, à concurrence de 660'000 USD. Après avoir rejeté deux demandes de levée du blocage, en juillet 2005 puis en septembre 2006, le Juge d'instruction a levé le séquestre le 4 juin 2008 et ordonné la restitution de 660'000 USD à B._. Cette décision, confirmée par le Tribunal d'accusation vaudois, a été annulée par arrêt du Tribunal fédéral du 11 mai 2009 (6B_1035/2008). Une restitution au lésé par l'autorité d'instruction ne pouvait avoir lieu que sur la base d'une situation juridique claire. En l'occurrence, on ignorait si le compte avait été débité en raison d'un comportement astucieux, si la banque avait engagé sa responsabilité en exécutant un ordre falsifié et si elle revêtait la qualité de lésé direct. Les prétentions de A._, qui disait être de bonne foi et avoir fourni une contre-prestation adéquate, n'avaient pas non plus été examinées. Le séquestre des valeurs était maintenu.
B. Par ordonnance du 7 mai 2010, le Juge d'instruction a levé le séquestre et autorisé A._ à disposer de la somme de 660'000 USD. Les autorités antillaises, compétentes pour poursuivre l'infraction de détournement, semblaient se désintéresser de l'affaire. Il en allait de même des autorités brésiliennes, qui avaient reçu des informations susceptibles de permettre d'ouvrir une procédure contre un ressortissant brésilien et une société. Faute de collaboration des autorités étrangères, il n'était pas possible d'établir la mauvaise foi de A._, qui prétendait avoir reçu les fonds dans le cadre d'une opération de compensation.
Par arrêt du 28 juillet 2010, le Tribunal d'accusation a admis le recours de B._ et maintenu le séquestre. Les affirmations du vice-président de A._ étaient contradictoires quant au destinataire des sommes versées en compensation. A._ n'avait pas de preuves écrites concernant l'opération, alors que les montants en étaient particulièrement élevés. La preuve d'une contre-prestation adéquate n'avait pas été rapportée. A._ devait dès lors démontrer ses affirmations, et les démarches au Brésil et aux Antilles néerlandaises devaient être intensifiées.
C. Par acte du 14 septembre 2010, A._ forme un recours en matière pénale par lequel elle demande la confirmation de l'ordonnance de levée du blocage du Juge d'instruction, subsidiairement le renvoi de la cause à la cour cantonale pour nouvelle décision dans le sens des considérants.
Le Tribunal d'accusation se réfère à son arrêt. Le Ministère public conclut au rejet du recours. B._ conclut au rejet du recours.
Considérant en droit:
1. Les décisions relatives aux séquestres ordonnés au cours d'une procédure pénale sont des décisions en matière pénale qui peuvent faire l'objet du recours en matière pénale au sens de l'art. 78 al. 1 LTF.
1.1 La décision par laquelle le juge - respectivement, l'autorité de recours - ordonne ou maintient un séquestre pénal constitue une décision incidente (ATF 128 I 129 consid. 1 p. 131; 126 I 97 consid. 1b p. 100 et les références). Selon la jurisprudence (ATF 133 IV 139 consid. 4 p. 141 et les références), le séquestre de valeurs patrimoniales cause en principe un dommage irréparable au sens de l'art. 93 al. 1 let. a LTF, dans la mesure où le détenteur se trouve privé temporairement de la libre disposition des valeurs saisies (ATF 126 I 97 consid. 1b p. 101; voir également ATF 128 I 129 consid. 1 p. 131; 89 I 185 consid. 4 p. 187 et les références).
1.2 La recourante a participé à la procédure devant l'instance précédente, et son intérêt juridique à la levée de la saisie est évident (art. 81 al. 1 LTF). Pour le surplus, le recours est interjeté en temps utile et dans les formes requises contre une décision rendue en dernière instance cantonale (art. 42, 80 al. 1 et 100 al. 1 LTF).
1.3 Dans le cas d'un recours dirigé, comme en l'espèce, contre une mesure provisionnelle, seule peut être invoquée la violation de droits fondamentaux (art. 98 LTF; cf. ATF 126 I 97 consid. 1c p. 102). Lorsque de tels griefs sont soulevés, l'art. 106 al. 2 LTF prévoit pour la motivation du recours des exigences qualifiées (ATF 134 I 83 consid. 3.2 p. 88). Le recourant doit ainsi indiquer, dans l'acte de recours lui-même, quel droit constitutionnel aurait été violé et montrer, par une argumentation circonstanciée, en quoi consiste sa violation (cf. ATF 134 III 186 consid. 5 p. 187; 133 II 249 consid. 1.4.2 p. 254; 130 I 26 consid. 2.1 p. 31, 258 consid. 1.3 p. 261). Les critiques de nature appellatoire sont irrecevables (cf. ATF 133 III 585 consid. 4 p. 589; 130 I 258 consid. 1.3 et les arrêts cités).
2. La recourante se plaint d'établissement manifestement inexact des faits, sur plusieurs points. Contrairement à ce que retient la cour cantonale, son vice-directeur aurait clairement expliqué à qui a été remise la contre-valeur en monnaie brésilienne des sommes transférées sur son compte, soit le dénommé C._, présenté à la recourante par son client D._. Il aurait aussi expliqué pourquoi les opérations de compensation, clandestines, n'étaient pas documentées car elles avaient lieu sur la base d'une relation de confiance avec le client.
2.1 Le Tribunal fédéral statue sur la base des faits établis par l'autorité précédente (art. 105 al. 1 LTF). Il ne peut s'en écarter que si les faits ont été établis de façon manifestement inexacte ou en violation du droit au sens de l'art. 95 LTF (art. 105 al. 2 LTF). Le recourant ne peut critiquer la constatation des faits susceptibles d'avoir une influence déterminante sur l'issue de la procédure, que si ceux-ci ont été établis en violation de droits fondamentaux, ce qu'il lui appartient de démontrer par une argumentation répondant aux exigences de motivation de l'art. 106 al. 2 LTF. Le pouvoir d'examen du Tribunal fédéral est limité, pratiquement, à l'arbitraire (cf. ATF 133 III 393 consid. 7.1 p. 398).
2.2 Point n'est besoin de rechercher si la cour cantonale a manifestement mal apprécié les déclarations du représentant de la recourante en considérant qu'il existait des contradictions quant au destinataire de la monnaie brésilienne. En effet, l'arrêt attaqué est essentiellement fondé sur l'absence de preuves documentaires des opérations de compensation effectuées par la recourante, et sur le fait que celle-ci ne s'était guère renseignée au sujet de C._ alors que le montant de l'opération était particulièrement élevé. La recourante tente d'expliciter ses propres explications, et insiste sur le rapport de confiance qui existait avec ses clients. Elle ne remet toutefois pas en cause l'absence de preuves documentaires qui lui est reprochée. Par ailleurs, sur le vu des explications données successivement par la recourante le 23 juillet 2009 (lors de l'audition de son vice-président qui a affirmé que les sommes en reals avaient été remises au dénommé C._) puis le 17 août 2009 (par son avocat qui a écrit que les mêmes montants avaient été versés à D._), il n'y avait rien d'insoutenable à y voir quelque contradiction, quand bien même la recourante tenterait maintenant de s'en expliquer. L'établissement des faits n'a dès lors rien d'arbitraire.
3. La recourante se plaint d'une violation de l'art. 70 al. 2 CP. Elle estime s'être suffisamment expliquée quant à sa bonne foi et au versement d'une contre-prestation adéquate. Chargée d'opérations de change usuelles, elle aurait versé l'exacte contrepartie, en reals brésiliens, des versements opérés sur son compte auprès de banque X._. L'accusation n'aurait pas apporté la preuve du contraire. Le séquestre de 660'000 USD, pendant six ans, serait par ailleurs d'une rigueur excessive. Le séquestre pourrait être levé en tout temps, en particulier lorsqu'il apparaît disproportionné dans sa durée. En l'occurrence, la mesure provisoire dure depuis six ans et rien ne permettrait d'entrevoir une clôture prochaine de l'instruction, compte tenu de l'inaction des autorités étrangères.
3.1 Selon la jurisprudence, la saisie d'un bien à titre de produit d'une infraction, au cours d'une enquête pénale, est admissible lorsque cette mesure est prévue par le droit de procédure applicable (en l'occurrence l'art. 223 CPP/VD), que l'origine délictueuse du bien est soupçonnée sur la base d'indices suffisants et qu'il devra vraisemblablement, dans la suite du procès, être restitué au lésé ou confisqué (ATF 126 I 97 consid. 3b p. 104/105, consid. 3d/aa p. 107). Tant que l'instruction n'est pas achevée, une simple probabilité suffit car, à l'instar de toute mesure provisionnelle, la saisie se rapporte à des prétentions encore incertaines. Le séquestre pénal doit être maintenu tant que subsiste une probabilité de confiscation (SJ 1994 p. 90 et 102). Par ailleurs, pour qu'une mesure portant, comme en l'espèce, atteinte à la garantie de la propriété (art. 26 Cst.) soit conforme au principe de la proportionnalité, il faut qu'elle soit apte à atteindre le but visé, que ce dernier ne puisse être atteint par une mesure moins incisive et qu'il existe un rapport raisonnable entre les effets de la mesure sur la situation de l'administré et le résultat escompté du point de vue de l'intérêt public (ATF 125 I 474 consid. 3 p. 482 et les arrêts cités). Un séquestre pénal doit notamment être proportionné dans son montant, dans sa durée et au regard de la situation de la personne touchée (ATF 132 I 229 consid. 11.3 p. 246).
3.2 Selon l'art. 70 al. 1 CP, le juge prononce la confiscation des valeurs patrimoniales qui sont le résultat d'une infraction, si elles ne doivent pas être restituées au lésé en rétablissement de ses droits. La confiscation n'est pas prononcée lorsqu'un tiers a acquis les valeurs dans l'ignorance des faits qui l'aurait justifiée, et cela dans la mesure où il a fourni une contre-prestation adéquate ou si la confiscation se révèle d'une rigueur excessive (art. 70 al. 2 CP). Comme le relève la recourante, la preuve de l'absence de bonne foi et de contre-prestation adéquate au sens de cette disposition incombe en principe à l'accusation. Toutefois, le tiers qui se prétend de bonne foi doit collaborer à l'établissement des faits sur ce point et, en particulier, fournir les explications nécessaires, faute de quoi il peut être amené à subir les conséquences de l'absence d'éléments probants (HIRSIG-VOUILLOZ, Commentaire romand, Code pénal I, ad art. 70 CP n° 38; PONCET/ MACALUSO, Confiscation, restitution et allocation de valeurs patrimoniales: quelques considérations de procédure pénale, in SJ 2001 pp. 221 ss, 233).
3.3 En l'occurrence, les sommes bloquées sont soupçonnées avoir été détournées du compte d'un client de B._ à Curaçao, au moyen d'ordres de paiement falsifiés. La condition première pour envisager une confiscation apparaît réalisée, en tout cas sous l'angle de la vraisemblance, ce que la recourante ne conteste d'ailleurs pas. La recourante ne saurait par ailleurs affirmer avoir apporté la démonstration de sa bonne foi, ni même avoir suffisamment collaboré à l'établissement des faits sur ce point. Elle prétend avoir versé, en reals brésiliens, une somme correspondant aux versements parvenus sur son compte, dans le cadre d'opérations de change. Elle se limite toutefois à de simples affirmations, à l'appui desquelles elle n'a produit aucun document. Elle explique avoir agi à des fins fiscales, sur une base de confiance mutuelle. On peut toutefois s'étonner, à l'instar de la cour cantonale, qu'il n'existe pas la moindre trace (à tout le moins un document comptable) susceptible d'attester une opération portant sur un transfert à l'étranger d'un montant total équivalant à 660'000 USD. C'est dès lors sans arbitraire que la cour cantonale a estimé que la preuve d'une contre-prestation adéquate n'avait pas, en l'état, été rapportée.
3.4 La recourante soutient que la saisie de 660'000 USD durant près de six ans serait d'une rigueur excessive au sens de l'art. 70 al. 2 in fine CP. Elle ne prétend toutefois pas que la mesure litigieuse l'empêcherait de poursuivre ses activités économiques ou entraverait ces dernières de manière inadmissible. L'argument doit par conséquent être écarté.
4. Invoquant enfin les principes de proportionnalité et de célérité, la recourante soutient que la durée du séquestre pénal, soit plus de six ans, serait inadmissible. Le Juge d'instruction avait déjà fait tout ce qui était possible pour éclaircir les faits, et les autorités étrangères (néerlandaises et brésiliennes) se désintéresseraient de la cause, pourtant portée à leur connaissance.
4.1 Selon la jurisprudence, un séquestre peut apparaître disproportionné lorsque la procédure pénale dans laquelle il s'inscrit s'éternise sans motifs suffisants (cf. ATF 132 I 229 consid. 11.6 p. 247).
4.2 En l'occurrence, le blocage dure depuis six ans. Une telle durée, en soi importante, s'explique par la complexité de la cause, son caractère international, ainsi que par l'attitude des Etats étrangers en principe compétents pour connaître des infractions de base, qui n'ont montré aucun empressement à éclaircir les faits. La recourante ne soutient pas, par ailleurs, que l'instruction aurait connu des retards inadmissibles. La cour cantonale a estimé que des recherches devaient être intensifiées aux Antilles Néerlandaises et au Brésil, et rien ne permet d'affirmer que, dûment saisis de demandes d'entraide judiciaire, ces Etats ne pourraient y répondre dans un délai raisonnable. De telles démarches permettraient tant de vérifier l'existence d'infractions de base que de contrôler les affirmations de la recourante à propos de sa contre-prestation. Le magistrat instructeur devra toutefois veiller à un suivi particulier de ces investigations, comme l'a d'ailleurs exigé le Tribunal d'accusation.
En définitive, la recourante invoque en vain le principe de la proportionnalité car, à supposer qu'une décision finale sur l'attribution des fonds doive être rendue en l'état du dossier, rien n'indique qu'elle lui serait favorable.
5. Sur le vu de ce qui précède, le recours doit être rejeté. La recourante, qui succombe, doit s'acquitter des frais judiciaires (art. 66 al. 1 LTF), ainsi que de l'indemnité de dépens allouée à l'intimée (art. 68 al. 2 LTF).
Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est rejeté.
2. Les frais judiciaires, arrêtés à 4000 fr., sont mis à la charge de la recourante.
3. Une indemnité de dépens de 2500 fr., est allouée à l'intimée B._, à la charge de la recourante.
4. Le présent arrêt est communiqué aux mandataires des parties, au Ministère public et au Tribunal d'accusation du Tribunal cantonal du canton de Vaud.
Lausanne, le 8 décembre 2010
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président: Le Greffier:
Féraud Kurz