Meryl Streep and Kylie Minogue were among stars at the glitzy ceremony
Mamma Mia! has been named best musical with leading lady Meryl Streep winning best actress at the second National Movie Awards in London.
Accepting her award for her role in Abba-centric film, Streep told the Royal Festival Hall audience: "I loved the movie, I'm so glad you did."
Johnny Depp was voted best male for his role in the Sweeney Todd remake. The Dark Knight won best superhero film.
Stars including Kylie Minogue and Nicole Kidman were at the awards.
Film star Samuel L Jackson and Sex and the City's Chris Noth were also at the ITV event which was hosted by actor James Nesbitt.
The awards were voted for by the public in a nationwide poll.
Picking up the best musical award for Mamma Mia! from Kidman, Abba's Bjorn Ulvaeus said: "This is very emotional for me, getting this fantastic prize from an Australian lady here in the UK - the two countries, more than any other countries, which have taken Abba to their hearts."
Mamma Mia! beat competition from fellow nominees Enchanted and Sweeney Todd: The Demon Barber of Fleet Street.
Streep triumphed over Amy Adams for Enchanted, Helena Bonham-Carter for Sweeney Todd and Ellen Page for US comedy Juno.
Harrison Ford, sporting a bushy moustache, accepted the best action and adventure film award for Indiana Jones and the Kingdom of the Crystal Skull by video link.
The fourth instalment of the Indiana Jones film series saw Ford's return as the famed archaeologist for the first time in 19 years.
The film had "a cracking good yarn", he said.
NATIONAL MOVIE AWARDS 2008
Best action/adventure film
Indiana Jones And The Kingdom Of The Crystal Skull
Best animated film
Best male performance
Johnny Depp (Sweeney Todd)
Best female performance
Meryl Streep (Mamma Mia!)
The Dark Knight
Wanted, The Mummy: Tomb of the Dragon Emperor and I Am Legend were also nominated in the action and adventure category.
Depp, in a pre-recorded acceptance speech for his best male award, said: "I would like to thank every single one of you, shake you by the hand and take you for breakfast."
He beat Will Smith, who was nominated twice for I Am Legend and Hancock, and Christian Bale, up for his role as Batman in The Dark Knight.
The film, which also stars the late Heath Ledger, has set several box office records in the US, and is North America's second highest-grossing film of all time behind James Cameron's 1997 epic Titanic.
Juno, a movie about a pregnant teenager played by Ellen Page, won best comedy and animation film Wall-E, about a loveable robot, won the best family film award.
The ceremony will be broadcast on ITV1 on 9 September at 2000 BST.