Tintin seikkailut: Yksisarvisen salaisuus

Juoni

Nuori toimittaja Tintti (Jamie Bell) ja hänen koiransa Milou käyskentelevät markkinoilla eräässä eurooppalaisessa kaupungissa. Tintti ostaa halvalla Yksisarvinen-nimistä kolmimastoista purjelaivaa esittävän pienoismallin, mutta saa välittömästi kimppuunsa pahaenteisen Ivan Ivanovitšch Sakarinin (Daniel Craig) sekä salaperäisen Barnaby Dawnesin (Joe Starr), jotka yrittävät kumpikin ostaa pienoismallin häneltä. Tintti kieltäytyy myymästä laivaa ja vie sen kotiinsa. Laiva menee kuitenkin rikki Miloun ja erään naapurin kissan ottaessa yhteen, ja laivan katkenneen maston sisältä putoaa pergamenttirulla. Milou huomaa rullan, muttei onnistu ilmoittamaan siitä Tintille. Sillä välin epäpätevät etsivät Dupond ja Dupont (Simon Pegg ja Nick Frost) ovat jäljittämässä valloilleen päässyttä taskuvarasta, Aristeides Sellististä (Toby Jones). Tintti käy tapaamassa Sakarinia Moulinsartin linnassa ja saa kuulla, että hänen ostamastaan laivasta on olemassa kaksi pienoismallia.
Myöhemmin Sakarinin liittolaiset ampuvat Barnabyn, joka yrittää varoittaa Tinttiä, ja myöhemmin sieppaavat Tintin ja vievät hänet SS Karaboudjanille. Laivalla Tintti pakenee ja tapaa laivan nimellisen kapteenin, Archibald Haddockin (Andy Serkis). Haddock on saanut jatkuvalla syötöllä viskiä ensimmäiseltä perämieheltään Allanilta (Daniel Mays), joka työskentelee Sakarinin laskuun, ja sen johdosta Haddock on suurimman osan ajasta humalassa, eikä tiedä laivan tapahtumista mitään. Tintti ja Haddock (sekä Milou) pääsevät lopulta pakenemaan Karaboudjanilta pelastusveneellä. Sakarin lähettää vesitason etsimään heidät, mutta Tintti saa koneen tekemään pakkolaskun. Sitten he nousevat koneeseen ja lähtevät lentämään kohti (fiktiivistä) marokkolaista Baggharin satamaa, mutta joutuvat tekemään pakkolaskun aavikolle.
Aavikon kuumuuden heikentämä ja alkoholin vieroitusoireista kärsivä Haddock alkaa nähdä hallusinaatioita ja muistaa tarinoita, joita hänen isänsä kertoi hänelle heidän esi-isästään, sir François De Hadoquesta. Sir François oli Yksisarvisen kapteeni 1600-luvulla ja joutui kerran aarteilla lastatun laivansa kanssa merirosvolaivan uhriksi. Merirosvoja johti naamiota käyttävä Rakham Punainen. Merirosvojen ja Yksisarvisen miehistön välille puhkesi kiivas taistelu, mutta lopulta Yksisarvinen joutui antautumaan. Sir François päätti mieluummin upottaa Yksisarvisen ja sen aarteen kuin sallia Rakham Punaisen ottaa ne haltuunsa. Paljastuu, että Yksisarvisesta on tehty kolme pienoismallia ja että niihin jokaiseen on kätketty pergamenttirulla. Yhdessä rullat paljastavat uponneen Yksisarvisen ja sen aarteen sijainnin.
Baggharissa Tintti ja kapteeni saavat tietää, että Yksisarvisen kolmas pienoismalli on Omar ben Salaadin (Gad Elmaleh) käsissä. Salaad on kuitenkin lukinnut pienoismallin luodinkestävän lasivitriinin sisälle. Sakarin suunnittelee järjestävänsä Salaadinin palatsissa konsertin, jossa esiintyy Bianca Castafiore (Kim Stengel), ”Milanon satakieli”. Castafioren viiltävä lauluääni kykenee särkemään pienoismallin vitriinin, niin että Sakarinin haukka voi sitten liitää varastamaan kolmannen pergamenttirullan. Seuraa takaa-ajo kaupungin halki satamaan. Takaa-ajon päätteeksi Sakarin onnistuu viimein pakenemaan Tintiltä ja Haddockilta mukanaan kaikki kolme pergamenttirullaa. Tintti jahtaa Sakarinia takaisin Eurooppaan ja järjestää tätä varten satamaan poliisivastaanoton. Haddock ja Sakarin, joka paljastuu Rakham Punaisen perilliseksi, uusivat esi-isiensä hurjapäisen miekkataistelun satamanostureilla. Lopulta Haddock onnistuu päihittämään Sakarinin.
Tintti ja Haddock saavat kaikki kolme rullaa käsiinsä, ja heille selviää, että rullien mukaan heidän etsimänsä aarre löytyy Moulinsartin linnasta, jonka Francis Haddock on aikoinaan rakennuttanut. Linnan kellarista he löytävät osan Yksisarvisen aarteesta sekä seuraavan vihjeen, joka opastaa heidät uponneen Yksisarvisen jäljille.