Sachverhalt:
A. Die Staatsanwaltschaft des Kantons Solothurn führt gegen X._ ein Strafverfahren wegen gewerbsmässigen Betrugs, eventuell Geldwäscherei. X._ wird verdächtigt, zusammen mit einem Mitbeschuldigten unter falschen Versprechungen Kundengelder in der Höhe von rund Fr. 34,5 Millionen entgegengenommen zu haben. Die Gelder sollen abredewidrig verwendet worden sein. Statt Investitionsgeschäfte zu tätigen, seien die Gelder in einem Schneeballsystem als angebliche Rendite an Kunden geflossen, teils seien damit "Altkunden", die bei früheren Geschäften Geld verloren hätten, befriedigt worden, teils sei das Geld an X._ selber geflossen, teils sei der Verbleib des Geldes unbekannt.
X._ wurde am 11. August 2006 verhaftet und in Untersuchungshaft genommen. Am 22. März 2007 bewilligte die Staatsanwaltschaft das Gesuch um vorzeitigen Strafantritt.
B. X._ stellte am 23. Januar 2008 ein Haftentlassungsgesuch. Das Haftgericht des Kantons Solothurn wies es mit Urteil vom 29. Januar 2008 ab.
Das Obergericht des Kantons Solothurn wies die Beschwerde von X._ mit Urteil vom 10. März 2008 ab.
C. X._ führt mit Eingabe vom 7. April 2008 Beschwerde an das Bundesgericht und beantragt, der Entscheid des Obergerichts vom 10. März 2008 sei aufzuheben und sie sei umgehend aus der Untersuchungshaft zu entlassen. Eventuell seien Auflagen im Sinne von § 53 StPO/SO auszusprechen.
D. Die Staatsanwaltschaft und das Obergericht beantragen Beschwerdeabweisung. Das Haftgericht hat auf Vernehmlassung verzichtet.
Die Vernehmlassungen wurden X._ zugestellt. Mit Schreiben vom 21. April 2008 hat X._ verzichtet, sich dazu zu äussern.
Erwägungen:
1. Das angefochtene Urteil stützt sich auf kantonales Strafprozessrecht. Letztinstanzliche Entscheide betreffend die Anordnung und Verlängerung der Untersuchungshaft können praxisgemäss mit der Beschwerde in Strafsachen gemäss Art. 78 Abs. 1 BGG angefochten werden. Die Sachurteilsvoraussetzungen geben zu keinen Bemerkungen Anlass.
2. Die Beschwerdeführerin rügt eine Verletzung des rechtlichen Gehörs. Das Obergericht habe dazu ausgeführt, dass der Entscheid der Haftrichterin mit voller Kognition geprüft werde. Trotzdem habe das Obergericht sich darauf beschränkt, auf die Überlegungen des Haftgerichts zu verweisen. Es mangle an einer vertieften Auseinandersetzung mit ihren Argumenten. Mit diesem Vorbringen nimmt die Beschwerdeführerin auf die Rüge im kantonalen Verfahren Bezug, worin sie kritisierte, das Haftgericht habe angesichts der ihm von der Staatsanwaltschaft zugestellten Akten einseitig entschieden. Sie habe keine Möglichkeit zu einer schriftlichen Stellungnahme gehabt und es sei keine Parteiverhandlung durchgeführt worden (Beschwerde an das Obergericht vom 6. Februar 2008, S. 8 Ziff. 6).
Im angefochtenen Urteil (S. 28 Ziff. 2) führt das Obergericht dazu aus, gemäss kantonalem Recht entscheide der Haftrichter nach Eingang der begründeten Stellungnahme des Staatsanwaltes unverzüglich, spätestens aber innert fünf Tagen nach Eingang des Haftentlassungsgesuchs. Das Verfahren sei in der Regel schriftlich; der Haftrichter könne eine mündliche Verhandlung anordnen (§ 47 Abs. 4 StPO/SO). Indem die Haftrichterin entschieden habe, ohne vorgängig der Beschwerdeführerin Gelegenheit zu geben, sich zur Stellungnahme der Staatsanwältin vernehmen zu lassen, habe sie dem kantonalen Recht nicht zuwidergehandelt. Eine Verletzung des rechtlichen Gehörs sei nicht ersichtlich, da die Beschwerdeführerin im Beschwerdeverfahren vor Obergericht Gelegenheit zur Stellungnahme habe und das Obergericht den Entscheid der Haftrichterin mit voller Kognition prüfe.
3. 3.1 Es ist offensichtlich, dass die Haftrichterin der Beschwerdeführerin das rechtliche Gehör hätte gewähren müssen. Sie hätte ihr Gelegenheit geben müssen, sich zur Stellungnahme der Staatsanwaltschaft zu äussern, bevor sie über das Haftentlassungsgesuch entschied, und dies unbekümmert darum, ob die Staatsanwaltschaft neue Tatsachen vorbrachte oder nicht. Dieser Anspruch auf Replik (Replikrecht) ergibt für das Haftprüfungsverfahren aus der Rechtsprechung zu Art. 31 Abs. 4 BV und Art. 5 Ziff. 4 EMRK (BGE 114 Ia 84 E. 3 S. 87 f.; Urteil 1P.541/2002 vom 8. November 2002, E. 2.1, publiziert in Praxis 2003 Nr. 64 S. 317, mit weiteren Hinweisen; Urteil des EGMR vom 21. Oktober 1986 i.S. Sanchez-Reisse, Serie A, Band 107, Ziff. 51, publiziert in EuGRZ 1988, S. 526).
3.2 Fragen kann sich lediglich, ob die Beschwerde diesbezüglich genügend begründet ist. Gemäss Art. 106 Abs. 2 BGG prüft das Bundesgericht Grundrechtsverletzungen nur insofern, als eine solche Rüge in der Beschwerde vorgebracht und begründet worden ist.
Im vorliegenden Fall wird die Verletzung des rechtlichen Gehörs ausdrücklich gerügt. Die Beschwerdeführerin führt aus, sie habe die Gehörsverletzung bereits vor dem Obergericht gerügt, das Obergericht habe die Rüge aber für unbegründet gehalten und auf den Entscheid der Haftrichterin verwiesen. Die Verletzung des Replikrechts durch die Haftrichterin wird nicht wörtlich genannt, könnte aber sinngemäss mit der Ausführung gemeint sein, die Haftrichterin habe "ohne weiteren Schriftenwechsel" entschieden.
Ob bezüglich des Replikrechts eine genügende Rüge im Sinne von Art. 106 Abs. 2 BGG vorliegt, kann offen bleiben, da die Beschwerde aus anderem Grund berechtigt ist.
4. Die Beschwerdeführerin begründet die Gehörsverletzung damit, das Obergericht habe bloss auf das Haftgerichtsurteil verwiesen, statt sich selber vertieft mit ihren Argumenten auseinanderzusetzen, und es habe die Begründungspflicht verletzt.
4.1 Gemäss Art. 29 Abs. 2 BV haben die Parteien Anspruch auf rechtliches Gehör. Der Betroffene hat das Recht, sich vor Erlass eines in seine Rechtsstellung eingreifenden Entscheids zur Sache zu äussern. Dazu gehört insbesondere das Recht, Einsicht in die Akten zu nehmen, mit erheblichen Beweisanträgen gehört zu werden und an der Erhebung wesentlicher Beweise entweder mitzuwirken oder sich zumindest zum Beweisergebnis zu äussern, wenn es geeignet ist, den Entscheid zu beeinflussen (BGE 127 I 54 E. 2b S. 56). Wesentlicher Bestandteil des Anspruchs auf rechtliches Gehör ist die Begründungspflicht. Die Begründung soll verhindern, dass sich die Behörde von unsachlichen Motiven leiten lässt, und dem Betroffenen ermöglichen, die Verfügung gegebenenfalls sachgerecht anzufechten. Dies ist nur möglich, wenn sowohl er wie auch die Rechtsmittelinstanz sich über die Tragweite des Entscheids ein Bild machen können. In diesem Sinn müssen wenigstens kurz die Überlegungen genannt werden, von denen sich die Behörde hat leiten lassen und auf welche sich ihr Entscheid stützt. Dies bedeutet indessen nicht, dass sie sich ausdrücklich mit jeder tatbeständlichen Behauptung und jedem rechtlichen Einwand auseinandersetzen muss. Vielmehr kann sie sich auf die für den Entscheid wesentlichen Gesichtspunkte beschränken (BGE 129 I 232 E. 3.2 S. 236; 126 I 97 E. 2b S. 102 f. mit Hinweisen).
4.2 Eine besondere Pflicht zur Begründung besteht dann, wenn ein Entscheid stark in die Rechtsstellung des Betroffenen eingreift, wie dies bei der vorliegenden Inhaftierung der Fall ist (BGE 133 I 270 E. 3.5.1 S. 283). Entscheidend ist der Inhalt der Urteilsbegründung. Das angefochtene Urteil des Obergerichts ist umfangreich, allerdings werden darin überwiegend in indirekter Rede Aktenstücke zusammengefasst. Die Erwägungen des Obergerichts zur Sache beschränken sich auf wenige Seiten, und es wird wiederholt auf das Haftgerichtsurteil verwiesen. Dieses leidet jedoch an einem offensichtlichen Verfahrensmangel, da sich die Beschwerdeführerin zur Stellungnahme der Staatsanwaltschaft vom 25. Januar 2008 vor dem Haftgericht nicht äussern konnte. Dazu hat das Obergericht nicht Stellung bezogen. Es übernimmt stattdessen mehrmals die Ansicht der Haftrichterin, so dass sich nicht bestimmen lässt, ob die Urteilsbegründung auf einer selbständigen Beurteilung der Beschwerde durch eine unabhängige Rechtsmittelinstanz beruht. Die Rüge, das Obergericht habe die Begründungspflicht verletzt, indem es pauschal auf die Erwägungen des Haftgerichts verwies, ist begründet.
5. Dies führt zur Aufhebung des angefochtenen Urteils, ohne dass die weiteren, materiellrechtlichen Rügen zu behandeln sind. Die Beschwerdeführerin hat vor Bundesgericht einen Antrag auf Haftentlassung gestellt. Dieser Antrag ist gemäss Art. 107 Abs. 2 BGG grundsätzlich zulässig (BGE 133 I 270 E. 1.1 S. 272 f.). Da jedoch eine materiellrechtliche Prüfung der Beschwerde unterbleibt, kann dem Antrag nicht stattgegeben werden (BGE 125 I 113 E. 3 S. 118).
6. Die Beschwerde ist gutzuheissen, soweit darauf einzutreten ist, und das angefochtene Urteil ist aufzuheben. Die Sache ist an das Obergericht zurückzuweisen (Art. 107 Abs. 2 BGG), welches für einen verfassungskonformen Entscheid besorgt sein wird.
Bei diesem Verfahrensausgang sind keine Gerichtskosten zu erheben (Art. 66 Abs. 4 BGG). Der Kanton Solothurn hat die Beschwerdeführerin für das bundesgerichtliche Verfahren angemessen zu entschädigen (Art. 68 Abs. 1 und 2 BGG). Das Gesuch der Beschwerdeführerin um unentgeltliche Rechtspflege und Verbeiständung wird gegenstandslos.
Demnach erkennt das Bundesgericht:
1. Die Beschwerde wird gutgeheissen, soweit darauf einzutreten ist, und das Urteil des Obergerichts des Kantons Solothurn, Beschwerdekammer, vom 10. März 2008 wird aufgehoben. Die Sache wird an das Obergericht zurückgewiesen.
2. Der vor Bundesgericht gestellte Antrag auf Haftentlassung wird abgewiesen.
3. Es werden keine Gerichtskosten erhoben.
4. Der Kanton Solothurn hat die Beschwerdeführerin für das bundesgerichtliche Verfahren mit Fr. 1'500.-- zu entschädigen.
5. Dieses Urteil wird der Beschwerdeführerin, der Staatsanwaltschaft, der Haftrichterin und dem Obergericht des Kantons Solothurn, Beschwerdekammer, schriftlich mitgeteilt.
Lausanne, 28. April 2008
Im Namen der I. öffentlich-rechtlichen Abteilung
des Schweizerischen Bundesgerichts
Der Präsident: Der Gerichtsschreiber:
Féraud Thönen