Middlesbrough got their Uefa Cup Group D campaign off to a flying start thanks to a Jimmy Floyd Hasselbaink goal.
Hasselbaink's strike came on 10 minutes, the Dutchman slipping the ball home after a fluid Boro move.
Szilard Nemeth and Doriva spurned good chances for Boro, while Mark Viduka was thwarted by goalkeeper Fabio Coltorti.
Grasshoppers proved equally wasteful in front of goal, although the Swiss side were unfortunate to have a goal disallowed for offside on 21 minutes.
The home side's trio of Brazilians - Eduardo, Rogerio and Antonio Dos Santos - were dangerous throughout and Swiss international Ricardo Cabanas also impressed.
The left-footed Dos Santos sent over a steady stream of crosses in the second half, while in the closing stages Rogerio went close with a couple of headers.
Rogerio's first header went past the post, while his second was saved by Mark Schwarzer.
Grasshoppers' problem was that they started so slowly, allowing Boro to seize the initiative.
Middlesbrough were quickly into their stride, none more so than Viduka, who - after turning sharply - drew a reaction save from Coltorti.
Viduka played a key role in Hasselbaink's goal, with the Australian becoming involved in a neat exchange of passes with Doriva.
Boro's Brazilian midfielder then slipped the ball to the unmarked Hasselbaink, who side-footed it past Coltorti.
It was Hasselbaink's first goal of the season.
Midway through the first half, Hasselbaink turned provider, laying the ball into the path of Nemeth, who dragged his shot wide.
Having begun so brightly Boro lost some of their attacking impetus, allowing Grasshoppers to come back into the game.
Boro had a lucky escape when Schwarzer's fumble from Rogerio's shot allowed Eduardo to poke the ball into the net but the goal was ruled out for offside.
Just before the interval Dos Santos blazed the ball over the bar from a good position as Grasshoppers continued to search for the equaliser.
Having survived those scares, Boro created two openings, although first Viduka and then Nemeth passed up both those opportunities.
On 55 minutes, Boro should have doubled their lead when Doriva was released by Gaizka Mendieta's through ball.
Viduka implored Doriva to pass to him but the Brazilian opted to shoot, his effort flashing past the post.
The game ended on a sour note for Hasselbaink, who was felled by a heavy tackle just before the final whistle was blown.
Grasshoppers: Coltorti, Stepanovs, Jaggy, Chihab (Toure 82), Mitreski, Renggli (Salatic 87), Cabanas, Dos Santos, Sutter, Eduardo, Rogerio.
Subs Not Used: Jehle, Hurlimann, Schwegler, Denicola, Luetolf.
Middlesbrough: Schwarzer, Parnaby, Riggott, Southgate, Pogatetz, Mendieta (Queudrue 79), Boateng, Doriva, Nemeth (Morrison 67), Hasselbaink, Viduka (Yakubu 85).
Subs Not Used: Knight, Maccarone, Johnson, Bates.
Booked: Pogatetz, Nemeth.
Goals: Hasselbaink 10.
Ref: Espen Berntsen (Norway).