I give the movie and "A" for special effects and an "F" for plot, storyline and characters. Also numerous plot holes exist such as why (spoiler alert) the aliens chose to take on the main character as one of their own even though he does not speak their language and says he is a marine. Then they are surprised when he "betrays" them.
Also was annoyed with Cameron's numerous anti-American messages in the movie. There are direct references to the war on terrorism and the U.S. treatment of American Indians. While there are a valid arguments to be made about these issues, Cameron's over simplification and heavy handed moralizing comes across and patronizing and hypocritical. Hollywood needs to stay out of politics.