Sachverhalt: A. X._ (Beschwerdeführer) und Z._ (Beschwerdegegnerin) heirateten am xxxx 1983. Sie wurden Eltern des Sohnes S._, geboren am xxxx 1985, und der Tochter T._, geboren am xxxx 1995. Die Parteien trennten sich 2003. Die Folgen des Getrenntlebens wurden gerichtlich geregelt. Im Oktober 2005 erhob die Beschwerdegegnerin Scheidungsklage und anlässlich der Sühnverhandlung im November 2005 einigten sich die Parteien auf ein gemeinsames Scheidungsbegehren. Das Bezirksgericht Zürich schied die Ehe mit Urteil vom 20. Juli 2007. Es stellte die Tochter T._ - der Teilvereinbarung über die Scheidungsfolgen entsprechend - unter die elterliche Sorge der Beschwerdegegnerin und regelte das Besuchsrecht. Den Beschwerdeführer verpflichtete es zu monatlichen, indexierten Unterhaltsbeiträgen an die Tochter T._ einerseits, und zwar von Fr. 1'200.-- ab Rechtskraft des vorliegenden Urteils bis 31. Oktober 2007 und von Fr. 1'350.-- ab 1. November 2007 bis zum ordentlichen Abschluss einer angemessenen Ausbildung (jeweils zuzüglich Kinderzulagen), und an die Beschwerdegegnerin andererseits, und zwar im Umfang von Fr. 800.-- ab Rechtskraft des vorliegenden Urteils bis 30. November 2013. Der Beschwerdeführer heiratete nach Rechtskraft des Scheidungspunkts seine neue Lebenspartnerin. Aus dieser Beziehung war bereits zuvor die Tochter U._, geboren am xxxx 2006, hervorgegangen. B. Am 3. August 2007 erklärte die Beschwerdegegnerin Berufung. Sie forderte - neben einer Änderung der Besuchsrechtsregelung - eine Erhöhung des nachehelichen Unterhalts, focht jedoch den Kindesunterhaltsbeitrag nicht an. Am 29. August 2007 erklärte auch der Beschwerdeführer Berufung. Am 21. Januar 2008 erstattete der Beschwerdeführer Berufungsantwort und beantragte, die Berufung der Beschwerdegegnerin abzuweisen und das Urteil vom 20. Juli 2007 vollumfänglich zu bestätigen. Hingegen reichte der Beschwerdeführer trotz Aufforderung, Berufungsanträge zu stellen und seine eigene Berufung zu begründen, keine entsprechende Rechtsschrift ein, weshalb das Obergericht des Kantons Zürich mit Beschluss vom 19. Februar 2008 auf seine Berufung nicht eintrat. Mit Urteil vom 16. Dezember 2008 regelte das Obergericht das Besuchsrecht, bestätigte den von keiner Partei angefochtenen Unterhaltsbeitrag für die Tochter von monatlich Fr. 1'350.--, zuzüglich Zulagen, ab Rechtskraft dieses Urteils bis zum ordentlichen Abschluss einer angemessenen Ausbildung. Es bestätigte auch den Unterhaltsbeitrag für die Beschwerdegegnerin von monatlich Fr. 800.-- ab Rechtskraft dieses Urteils bis 30. November 2013. Für die Zeit danach bis zum Eintritt des Beschwerdeführers in das ordentliche Pensionsalter per Ende März 2026 legte es den monatlichen Unterhaltsbeitrag an die Beschwerdegegnerin auf Fr. 560.-- fest, behielt aber eine Erhöhung auf Fr. 1'912.-- vor ab dem Zeitpunkt, in dem die Unterhaltspflicht des Beschwerdeführers gegenüber der Tochter endet. Gegen die Regelung des nachehelichen und des Kindesunterhalts erhob der Beschwerdeführer kantonale Nichtigkeitsbeschwerde, die vom Kassationsgericht mit Zirkulationsbeschluss vom 13. November 2009 gutgeheissen wurde. Es wies die Angelegenheit an das Obergericht zurück. Mit Urteil vom 22. Februar 2010 bestätigte das Obergericht die Beitragspflicht des Beschwerdeführers an den Unterhalt der Tochter von monatlich Fr. 1'350.--, zuzüglich Zulagen, ab Rechtskraft dieses Urteils bis zum ordentlichen Abschluss einer angemessenen Ausbildung. Es bestätigte den Unterhaltsbeitrag für die Beschwerdegegnerin von monatlich Fr. 800.-- ab Rechtskraft dieses Urteils bis 30. November 2013 und ordnete an, dass ab 1. Dezember 2013 der Unterhaltsbeitrag entfällt, solange der Beschwerdeführer für die Tochter Unterhaltsbeiträge bezahlen muss. Ab dem Zeitpunkt, in dem seine Unterhaltspflicht gegenüber der Tochter infolge der Vollendung ihrer Erstausbildung endet, wurde der Beschwerdeführer verpflichtet, der Beschwerdegegnerin einen monatlichen Unterhaltsbeitrag von Fr. 927.-- bis 31. März 2026 zu bezahlen. Die Beschwerdegegnerin erhob daraufhin hinsichtlich ihres nachehelichen Unterhaltsbeitrags kantonale Nichtigkeitsbeschwerde. Der Beschwerdeführer wandte sich gegen Kindes- und nachehelichen Unterhalt mit Beschwerde an das Bundesgericht. Mit Zirkulationsbeschluss vom 20. Mai 2011 hiess das Kassationsgericht die Nichtigkeitsbeschwerde gut. Das Bundesgericht schrieb daraufhin das Rechtsmittel des Beschwerdeführers als gegenstandslos ab (Verfügung 5A_247/2010 vom 5. August 2011). Mit Urteil vom 16. Januar 2012 bestätigte das Obergericht erneut die Beitragspflicht des Beschwerdeführers an den Unterhalt der Tochter von monatlich Fr. 1'350.--, zuzüglich Zulagen, ab Rechtskraft dieses Urteils bis zum ordentlichen Abschluss einer angemessenen Ausbildung. Es bestätigte auch den Unterhaltsbeitrag für die Beschwerdegegnerin von monatlich Fr. 800.-- ab Rechtskraft dieses Urteils bis 30. November 2013 und ordnete erneut an, dass ab 1. Dezember 2013 der Unterhaltsbeitrag entfällt, solange der Beschwerdeführer für die Tochter Unterhaltsbeiträge bezahlen muss. Ab dem Zeitpunkt, in dem seine Unterhaltspflicht gegenüber der Tochter infolge der Vollendung ihrer Erstausbildung endet, wurde der Beschwerdeführer verpflichtet, der Beschwerdegegnerin einen monatlichen Unterhaltsbeitrag von Fr. 927.-- bis 31. März 2026 zu bezahlen. C. Am 17. Februar 2012 hat der Beschwerdeführer gegen das obergerichtliche Urteil vom 16. Januar 2012 Beschwerde an das Bundesgericht erhoben. Er beantragt dessen Aufhebung in Bezug auf die Regelung des Kindes- und nachehelichen Unterhalts. Er sei zu verpflichten, einen monatlichen Kindesunterhaltsbeitrag von Fr. 888.05, zuzüglich Zulagen, zu bezahlen. Mangels Leistungsfähigkeit sei der Beschwerdegegnerin kein nachehelicher Unterhalt zuzusprechen. Zudem ersucht er um unentgeltliche Rechtspflege und Verbeiständung. Das Obergericht hat auf Vernehmlassung verzichtet. Die Beschwerdegegnerin ersucht um Abweisung der Beschwerde und um unentgeltliche Rechtspflege und Verbeiständung.