Faits: A. Le 17 avril 2010 (après des actes similaires commis la nuit précédente), E._ (âgé de 18 ans), B._ et plusieurs comparses, venus de la région lyonnaise, ont cambriolé un garage à Lyss et volé trois voitures. B._ conduisait une Audi RS6, E._ étant sur le siège passager. Les véhicules ont été poursuivis par la police. Deux d'entre eux ont été abandonnés et leurs occupants ont pris la fuite. B._ et E._ ont continué à circuler à grande vitesse sur l'autoroute A1 en direction de Payerne. Une patrouille de la gendarmerie vaudoise composée de C._ et D._ se trouvait à Payerne. Ayant entendu un appel de leurs collègues fribourgeois, ils décidèrent d'installer un barrage dans le tunnel routier de Sévaz après l'avoir fermé à la circulation. La voiture de police, feux bleus allumés, fut installée à cheval entre la bande d'arrêt d'urgence et la voie de droite; une herse fut posée sur la voie de gauche. C._ se posta devant la voiture de police, muni d'un pistolet mitrailleur. A l'arrivée du véhicule volé, il tira plusieurs coups de feu en visant la partie inférieure de la calandre. Le premier coup (tiré d'une distance d'environ 38 m) traversa le bas du pare-brise et atteignit mortellement E._. Le véhicule passa sur la herse et s'immobilisa peu après. Des projectiles, douilles et impacts ont été retrouvés à l'avant, à la hauteur et à l'arrière du barrage. B. Le 10 juin 2011, le Ministère public fribourgeois a classé la plainte formée contre C._ par A._ (frère jumeau de E._) et par la famille de la victime, ainsi que la plainte formée par B._ pour meurtre, homicide par négligence ou mise en danger de la vie d'autrui. Il a refusé d'entrer en matière sur la plainte pour complicité dirigée contre D._. Il a considéré que le barrage avait été correctement installé et que l'usage de l'arme à feu était justifié et proportionné. Il n'y avait pas d'intention meurtrière. Plusieurs réquisitions de preuves ont été écartées. C. Par arrêt du 27 octobre 2011, la Chambre pénale du Tribunal cantonal fribourgeois a confirmé cette décision, sur recours de A._ et de B._, après avoir également rejeté diverses réquisitions de preuves. L'agent avait visé le bas du véhicule afin de l'arrêter et rien ne permettait de retenir une intention de tuer. Tireur entraîné, il ne disposait que de peu de temps pour prendre sa décision et devait éviter de tirer trop bas en raison des risques de ricochets. L'installation d'un barrage dans un tunnel n'était pas contraire aux directives et la position de l'agent, devant le véhicule de police, était correcte. Voyant arriver le véhicule volé à grande vitesse, il s'était senti menacé. La cour cantonale a confirmé cet état de légitime défense: il semblait que le véhicule circulait "presqu'entièrement" sur la voie de droite peu avant de parvenir au barrage et ne s'était déporté à gauche qu'à l'approche de la herse, de sorte que l'agent pouvait se croire en danger de mort. Les frais de procédure ont été mis à la charge des recourants et des indemnités de dépens ont été allouées aux deux agents. D. Par acte du 5 décembre 2011 (1B_687/2011), A._ forme un recours en matière pénale par lequel il demande l'annulation de l'arrêt cantonal et le renvoi de la cause au Ministère public pour complément d'enquête ou renvoi de C._ devant l'autorité de jugement. Il requiert l'assistance judiciaire. Il a précisé par la suite que son recours ne remettait pas en cause le classement de la procédure en ce qui concerne D._. Par acte du même jour (1B_689/2011), B._ forme également un recours en matière pénale par lequel il demande l'annulation de l'arrêt cantonal et le renvoi de l'affaire pour nouvelle décision au sens des considérants. La Chambre pénale a renoncé à formuler des observations. C._ conclut au rejet des recours. D._ s'en rapporte à justice et conclut, subsidiairement, au rejet des recours en tant qu'ils le concernent. Le Ministère public conclut à l'irrecevabilité, subsidiairement au rejet des recours. 