Sachverhalt:
Sachverhalt:
A. A. B._ und P. B._ heirateten im Jahre 1992. Zunächst führten sie in Basel ein Restaurant und später ein Pub in X._, das P. B._ 1993 zu einem Cabaret ausbaute. Seit dem Sommer 1999 kam es immer wieder zu tätlichen Auseinandersetzungen zwischen den Eheleuten.
Den Nachmittag des 26. Oktober 1999 verbrachte A. B._ zusammen mit vier ihr bekannten Marokkanerinnen. Gegen ca. 20.00 Uhr begaben sich die fünf Frauen ins Cabaret, wo A. B._ mit ihrer Arbeit begann. In der Folge kam es zwischen den Eheleuten B._ zu einem heftigen Streit, und über den gesamten Abend hinweg bildeten die ehelichen Auseinandersetzungen ein Gesprächsthema der Frauen.
Gegen 03.30 Uhr verliess A. B._ das Cabaret und versteckte sich, nachdem sie sich umgezogen hatte, zunächst im Kofferraum und anschliessend im Innern des Wagens ihres Mannes. Sie beabsichtigte herauszufinden, wohin er sich jeweils nach Lokalschluss begebe. Der Ehemann entdeckte sie sofort, worauf es zu einem Streit kam. P. B._ fuhr seine Frau zum Polizeiposten in Olten. Der dort durchgeführte Atemalkoholtest ergab für sie einen Wert von 1,33 Promille. Eine Patrouille der Polizei brachte sie nach Hause, wo sie gegen 05.30 Uhr sehr aufgeregt eintraf. Sie war wütend, weinte und klagte. Sie trank Whiskey und bat eine der Marokkanerinnen, ihr zu helfen, in die Wohnung ihres Mannes zu gelangen, um dort Papiere zu holen. Eine andere Marokkanerin half ihr, eine Leiter auf das Vordach des 1. Stockwerks zu bringen und am Balkon des 2. Stockwerks anzustellen. A. B._ stieg die Leiter hoch und drang durch die Balkontüre, deren Glasscheibe sie zerbrechen musste, in die Wohnung ihres Ehemannes ein. Mittels (Grill-)Anzündflüssigkeit legte sie im Schlafzimmer und im Büroraum Feuer, behändigte eine Herrenuhr "Rado Ceramica", eine Goldkette mit Puma-Anhänger sowie eine Geldkassette und brachte sich dann über die Leiter in Sicherheit.
Das Feuer zerstörte die von P. B._ bewohnte Wohnung und griff auch auf die Dachkonstruktion über. Die mit dem Brand verbundene Rauchentwicklung und das Löschwasser vergrösserten den Schaden auf insgesamt ca. Fr. 650'000.--. Nebst den vier Marokkanerinnen befanden sich noch drei Tänzerinnen des Cabarets im unteren Stockwerk des Hauses, die sich und ihre Habseligkeiten rechtzeitig in Sicherheit bringen konnten.
Das Feuer zerstörte die von P. B._ bewohnte Wohnung und griff auch auf die Dachkonstruktion über. Die mit dem Brand verbundene Rauchentwicklung und das Löschwasser vergrösserten den Schaden auf insgesamt ca. Fr. 650'000.--. Nebst den vier Marokkanerinnen befanden sich noch drei Tänzerinnen des Cabarets im unteren Stockwerk des Hauses, die sich und ihre Habseligkeiten rechtzeitig in Sicherheit bringen konnten.
B. Das Obergericht des Kantons Solothurn verurteilte A. B._ am 21. Januar 2004 wegen einfacher Brandstiftung und Diebstahls zum Nachteil eines Familiengenossen zu 2 1⁄2 Jahren Zuchthaus. Gleichzeitig verpflichtete es sie, der G._ Versicherungs AG Fr. 29'955.15 Schadenersatz zu zahlen.
B. Das Obergericht des Kantons Solothurn verurteilte A. B._ am 21. Januar 2004 wegen einfacher Brandstiftung und Diebstahls zum Nachteil eines Familiengenossen zu 2 1⁄2 Jahren Zuchthaus. Gleichzeitig verpflichtete es sie, der G._ Versicherungs AG Fr. 29'955.15 Schadenersatz zu zahlen.
C. A. B._ führt eidgenössische Nichtigkeitsbeschwerde und beantragt, der angefochtene Entscheid sei aufzuheben und die Sache zur Neubeurteilung an die Vorinstanz zurückzuweisen.

Das Bundesgericht zieht in Erwägung:
Das Bundesgericht zieht in Erwägung:
1. Die Beschwerdeführerin beanstandet in verschiedener Hinsicht die vorinstanzliche Strafzumessung.
Der Richter misst die Strafe nach dem Verschulden des Täters zu; er berücksichtigt die Beweggründe, das Vorleben und die persönlichen Verhältnisse des Schuldigen (<ref-law>). Dem Sachrichter ist vorgeschrieben, welche massgeblichen Gesichtspunkte für die Zumessung der Strafe zu berücksichtigen sind. Es steht ihm innerhalb des Strafrahmens bei der Gewichtung der einzelnen zu berücksichtigenden Komponenten ein erheblicher Ermessensspielraum zu. Der Kassationshof des Bundesgerichts greift daher in dieses Ermessen nur ein, wenn das kantonale Gericht den gesetzlichen Strafrahmen über- oder unterschritten hat, wenn es von rechtlich nicht massgebenden Gesichtspunkten ausgegangen ist oder wenn es wesentliche Gesichtspunkte ausser Acht gelassen, bzw. in Überschreitung oder Missbrauch seines Ermessens falsch gewichtet hat (<ref-ruling> E. 2 S. 103; <ref-ruling> E. 2 S. 55).
1.1 Die Beschwerdeführerin macht geltend, sie habe in schwerer Bedrängnis und aus Zorn bzw. grossem Schmerz über eine ungerechte Kränkung gehandelt. Diese beiden Strafmilderungsgründe habe die Vorinstanz zu Unrecht nicht berücksichtigt.
Schwere Bedrängnis im Sinne von Art. 64 Abs. 1 al. 2 StGB liegt vor, wenn eine notstandsähnliche Lage den Täter zur Begehung der strafbaren Handlung treibt, d.h. wenn die Bedrängnis einen besonders hohen Grad erreicht und den Täter so beeindruckt, dass er einen Ausweg nur in der strafbaren Handlung zu finden glaubt (<ref-ruling> E. 2 S. 10; <ref-ruling>). Der Täter muss also die Tat als einzigen Ausweg betrachtet haben (<ref-ruling> E. 4a S. 96; Jörg Rehberg, Strafrecht II, Zürich 2001, S. 56). Die Bedrängnis kann materieller wie psychischer Art sein (<ref-ruling> E. 4a S. 95). Es ist unerheblich, ob der Täter die Notlage selber verschuldet hat oder nicht (<ref-ruling> S. 188; Hans Schultz, Einführung in den allgemeinen Teil des Strafrechts, zweiter Band, Bern 1982, S. 87, so auch Günter Stratenwerth, Allgemeiner Teil II, Bern 1989, § 7 N. 90; Stefan Trechsel, Kurzkommentar, Zürich 1997, 64 N. 9). Genauso wie in einer Notstandslage hat der Bedrängte eine gewisse Verhältnismässigkeit zwischen den Gründen, die ihn zur Tat veranlassen, und der Bedeutung des Rechtsguts, in das er eingreift, zu beachten. Das verfolgte Ziel und die begangene Straftat dürfen nicht in einem derartigen Missverhältnis stehen, dass die Tat als moralisch verwerflich erscheint (<ref-ruling> E. 2 S. 10; <ref-ruling> E. 4c S. 98). Auch der Strafmilderungsgrund des <ref-law> setzt die Verhältnismässigkeit zwischen dem provozierenden Anlass und der Reaktion des Täters voraus (Urteil des Bundesgerichts 6S.668/2001 vom 24. Januar 2002, E. 6).
Ob die Beschwerdeführerin in schwerer Bedrängnis und aus Zorn bzw. grossem Schmerz über eine ungerechte Kränkung gehandelt hat, kann offen bleiben. Denn bei beiden Varianten der Strafmilderung fehlt es offensichtlich an der geforderten Verhältnismässigkeit:
Die Beschwerdeführerin hatte es mit ihrer Tat gezielt darauf angelegt, ihrem Ehemann, der sie verlassen hatte, zu schaden und ihm die Konsequenzen seines Scheidungsbegehrens vor Augen zu führen. Diese Zielsetzung und das gewählte Mittel, eine Feuersbrunst mit grossem Schaden zu entfachen, stehen in einem krassen Missverhältnis, weshalb die Vorinstanz den Strafmilderungsgrund des Handelns in schwerer Bedrängnis zu Recht verneint hat.
Der Ehemann der Beschwerdeführerin "lieferte" sie, nachdem er sie in seinem Wagen entdeckt hatte, bei der Polizei "ab". Dass sie sich dadurch persönlich schwer gekränkt fühlte, ist nachvollziehbar. Doch steht das Verursachen einer Feuersbrunst mit grossem Schaden in keinem Verhältnis zum "Abliefern" bei der Polizei. Die Vorinstanz hat somit den Strafmilderungsgrund der Provokation zu Recht verneint.
1.2 Die Beschwerdeführerin macht geltend, sie sei im Zeitpunkt der Tat vermindert zurechnungsfähig gewesen.
Die Vorinstanz würdigt die Ausführungen des Gutachters zum Alkoholkonsum der Beschwerdeführerin sowie den detaillierten Tatablauf und kommt gestützt darauf zum Schluss, die Zurechnungsfähigkeit der Beschwerdeführerin sei im Tatzeitpunkt nicht vermindert gewesen. Die Ausführungen in der Beschwerdeschrift wenden sich gegen diese tatsächliche Feststellung, was unzulässig ist (Art. 273 Abs. 1 lit. b und Art. 277bis Abs. 1 BStP).
1.3 Die Beschwerdeführerin rügt, die Vorinstanz rechtfertige die überaus hohe Zuchthausstrafe von 2 1⁄2 Jahren massgeblich mit dem Umstand, dass die Feuersbrunst einen sehr hohen Schaden verursacht habe. Der hohe Schaden sei jedoch in der einjährigen Minimalstrafe des <ref-law> bereits enthalten. Die zweimalige Berücksichtigung desselben Tatbestandsmerkmals bei der Strafzumessung verstosse gegen das Doppelverwertungsverbot.
Ein qualifizierendes (oder privilegierendes) Tatbestandsmerkmal kann mehr oder weniger ausgeprägt vorhanden sein. In welchem Ausmass diese Modalitäten gegeben sind, darf der Richter - zusätzlich zum besonderen Strafrahmen - bei der Strafzumessung berücksichtigen (Hans Wiprächtiger, Basler Kommentar, Strafgesetzbuch I, N 57 zu <ref-law> mit Hinweisen zur Rechtsprechung). Der von der Beschwerdeführerin verursachte Schaden von Fr. 650'000.-- übersteigt das Schadenselement des Grundtatbestands um ein Mehrfaches, weshalb die Vorinstanz diesen Umstand straferhöhend gewichten durfte. Darin liegt keine Bundesrechtsverletzung.
1.4 Die Beschwerdeführerin zählt die von der Vorinstanz anerkannten strafmindernden Faktoren wie Erniedrigung und Gewalt durch den Ehemann, schwierige Jugend, Blutalkoholkonzentration zum Tatzeitpunkt von max. 1,75 Promille, hohe Strafempfindlichkeit (Alter, berufliche Situation), keinerlei Vorstrafen, guter Leumundsbericht sowie Wohlverhalten seit der Tat auf und schliesst daraus, mit der Aussprechung einer Zuchthausstrafe von 2 1⁄2 Jahren habe die Vorinstanz ihr Ermessen überschritten.
Mit dieser Argumentation blendet die Beschwerdeführerin sämtliche belastenden Aspekte aus, was unzulässig ist. Bei der Gesamtwürdigung hat die Vorinstanz - ausgehend von der Mindeststrafe von einem Jahr Zuchthaus - auch berücksichtigt, dass die Beschwerdeführerin zusätzlich wegen Diebstahls zu bestrafen war, dass sie aus egoistischen und niederträchtigen Motiven gehandelt, einen sehr hohen Sachschaden verursacht, eine abstrakte Gefahr für mehrere Menschen geschaffen und weder Einsicht noch Reue gezeigt hatte.
Angesichts sämtlicher wesentlichen Beurteilungsmerkmale erscheint die Zuchthausstrafe von 2 1⁄2 Jahren nicht als unhaltbar hart. Damit ist der Vorwurf unbegründet, die Vorinstanz habe bei der Strafzumessung ihr Ermessen überschritten.
Angesichts sämtlicher wesentlichen Beurteilungsmerkmale erscheint die Zuchthausstrafe von 2 1⁄2 Jahren nicht als unhaltbar hart. Damit ist der Vorwurf unbegründet, die Vorinstanz habe bei der Strafzumessung ihr Ermessen überschritten.
2. Im Zusammenhang mit der Zivilforderung beanstandet die Beschwerdeführerin, verschiedene Schadensposten seien nicht ordnungsgemäss festgestellt worden. Gebrannt habe es im zweiten Stock und im Dachgeschoss. Schäden habe es allenfalls noch in anderen Wohnräumen, im Treppenhaus sowie an der Fassade gegeben. Das Cabaret im Erdgeschoss sei jedoch nicht beeinträchtigt worden. Es sei daher nicht einzusehen, was der Betriebsunterbruch mit dem Brandschaden zu tun habe. Dass dem Ehemann Geld gestohlen worden sei, sei nie nachgewiesen worden. Es sei auch unklar, welche Rechnungen die Firma N._ AG bezahlt habe.
Mit diesen Vorbringen wendet sich die Beschwerdeführerin im Wesentlichen gegen die tatsächlichen Feststellungen der Vorinstanz, was unzulässig ist. Diese hält nämlich fest, die Zivilforderung der Beschwerdegegnerin betrage Fr. 29'955.15, die dem Ehemann für Brand- und Betriebsunterbrechungsschäden sowie für den gestohlenen Geldbetrag vergütet worden seien. Die Aufwendungen seien durch Belege in den Akten ausgewiesen. Dass die Vorinstanz von einem falschen Schadensbegriff ausgegangen wäre, macht die Beschwerdeführerin nicht geltend und ist auch nicht ersichtlich. Damit erweisen sich die Rügen als unbegründet, soweit auf sie überhaupt eingetreten werden kann.
Mit diesen Vorbringen wendet sich die Beschwerdeführerin im Wesentlichen gegen die tatsächlichen Feststellungen der Vorinstanz, was unzulässig ist. Diese hält nämlich fest, die Zivilforderung der Beschwerdegegnerin betrage Fr. 29'955.15, die dem Ehemann für Brand- und Betriebsunterbrechungsschäden sowie für den gestohlenen Geldbetrag vergütet worden seien. Die Aufwendungen seien durch Belege in den Akten ausgewiesen. Dass die Vorinstanz von einem falschen Schadensbegriff ausgegangen wäre, macht die Beschwerdeführerin nicht geltend und ist auch nicht ersichtlich. Damit erweisen sich die Rügen als unbegründet, soweit auf sie überhaupt eingetreten werden kann.
3. Die Beschwerdeführerin stellt ein Gesuch um unentgeltliche Rechtspflege. Da ihre Begehren von vornherein aussichtslos erschienen, ist das Gesuch abzuweisen (Art. 152 OG). Folglich wird die Beschwerdeführerin kostenpflichtig (Art. 278 Abs. 1 BStP). Bei der Bemessung der Gerichtsgebühr ist jedoch ihren finanziellen Verhältnissen Rechnung zu tragen.
Mit dem Entscheid in der Sache ist das Gesuch um aufschiebende Wirkung gegenstandslos.

Demnach erkennt das Bundesgericht:
Demnach erkennt das Bundesgericht:
1. Die Nichtigkeitsbeschwerde wird abgewiesen, soweit darauf einzutreten ist.
1. Die Nichtigkeitsbeschwerde wird abgewiesen, soweit darauf einzutreten ist.
2. Das Gesuch um unentgeltliche Rechtspflege wird abgewiesen.
2. Das Gesuch um unentgeltliche Rechtspflege wird abgewiesen.
3. Die Gerichtsgebühr von Fr. 800.-- wird der Beschwerdeführerin auferlegt.
3. Die Gerichtsgebühr von Fr. 800.-- wird der Beschwerdeführerin auferlegt.
4. Dieses Urteil wird den Parteien, der Staatsanwaltschaft des Kantons Solothurn und dem Obergericht des Kantons Solothurn, Strafkammer, schriftlich mitgeteilt.
Lausanne, 6. Juli 2004
Im Namen des Kassationshofes
des Schweizerischen Bundesgerichts
Der Präsident: Der Gerichtsschreiber: