Goals from Thierry Henry and a Robin van Persie brace gave Arsenal a place in the last 16 of the Champions League.
Henry added to his back catalogue of spectacular goals with a wonderful curling shot to give Arsenal the lead midway through the first half.
Before Van Persie's late brace Arsenal were thwarted by some excellent goalkeeping from Jaromir Blazek.
In the final 10 minutes Van Persie made the game safe, scoring with a powerful shot and then a side-footed finish.
Until Van Persie's goals Blazek's goalkeeping had ensured the Czech side were always in the game.
Arsenal's inability to extend their lead gave them some nervous moments as Sparta pressed for an equaliser, notably when Adam Petrous went close with a header just before Arsenal's second goal.
Martin Petras also hit the bar for Sparta soon after they went 2-0 down.
Early on Arsenal refused to jettison their short-passing game despite a heavy pitch caused by torrential rain in north London.
One elaborate move involving Henry, Dennis Bergkamp and Robert Pires carved apart the Sparta defence, but the Dutch striker's close-range shot hit the bar.
Soon after Blazek denied Bergkamp by coming out quickly and blocking the Dutchman's shot.
Bergkamp had a third chance to score in that promising Arsenal opening period but he miscued, scuffing his shot.
On 23 minutes Henry showed Bergkamp how do to it, showing pinpoint precision to bend a shot past Blazek.
Sparta must be sick of the sight of Henry - a fortnight ago the Frenchman scored twice against them to become Arsenal's all-time leading scorer.
Sparta's best first-half effort came from Martin Hasek, whose shot almost surprised Manuel Aluminia as it came through a crowded penalty area.
Soon after Hasek's shot Bergkamp slipped the ball to Jose Antonio Reyes, who cut back inside and hit a curling shot that Blazek tipped past the post.
Early in the second half Blazek again kept Sparta in the game when he moved quickly to save a Henry free-kick.
Henry, who has missed much of the season with a groin injury and had been rested for Saturday's north London derby against Spurs, was taken off on 65 minutes to be replaced by Van Persie.
On 81 minutes Van Persie worked some space after picking up a pass from Bergkamp before firing a shot into the roof of the net.
With four minutes left Van Persie claimed a second, steering the ball home after collecting a pass from Emmanuel Eboue.
Arsenal: Almunia, Lauren, Toure, Campbell, Clichy, Reyes (Eboue 82), Silva, Flamini, Pires (Fabregas 73), Henry (Van Persie 66), Bergkamp.
Subs Not Used: Poom, Song Billong, Cygan, Senderos.
Goals: Henry 23, Van Persie 81, 86.
Sparta Prague: Blazek, Pergl, Lukas, Petrous (Jeslinek 80), Kadlec, Pospech, Petras, Zelenka, Hasek, Polacek (Slepicka 58), Matusovic.
Subs Not Used: Grigar, Dosek, Herzan, Loucka.
Ref: Alain Sars (France).