Creator Backlash: After Man of Steel came out Bryan Singer commented on both that movie and this one. He is proud of what he made, but has expressed understanding of why audiences weren't as enthusiastic about it. In retrospect, he would have increased the action quotient or sped up the pacing (putting the airplane catch earlier in the movie), or else done a complete reboot. Beforehand, other people involved with the production expressed similar sentiments.
Dawson Casting: Inverted. In spite of this film taking place five years after Superman II, a 22 year old Kate Bosworth plays Lois Lane. Made all the more noticeable when the five foot five actress is playing opposite six foot three Brandon Routh, who was only 25 himself when he was cast yet supposedly he is playing a Superman who is well over 30 and already a legendary figure in his own time.
Deleted Scene: The intended opening scene, of Superman surveying the remains of Krypton in his Kryptonian spacecraft, was completely cut out. It can be seen in its entirety here.
Running the Asylum: Singer is, by some accounts, a huge Superman fan (or at least a huge fan of the first two Christopher Reeve Superman films), which is why he left the X-Men franchise to make a Superman movie. Some of those accounts suggest that this is why the first two X-Men movies were awesome and Superman was not; he was only marginally familiar with the X-Men comics, so he was able to make two X-Men films that even non-fans could enjoy, but he was too close to Superman to do it right.
Under Age Casting: Lois Lane is played by Kate Bosworth, who was only 23 years old and looked it. She was supposed to be an experienced reporter with a Pulitzer or two under her belt, not to mention a kindergarten-age son. Brandon Routh (Clark Kent) was 26 during production. The most problematic part of all this is that the movie is supposed to take place five years after the events of Superman 2, which makes these characters 35 at the very minimum.
The final casting for the role came down to Brandon Routh and Henry Cavill. Cavill was in fact cast in 2004 when it was going to be a full reboot, before McG was fired and Singer was brought in and made it not a reboot, and chose Routh for his closer resemblance to Christopher Reeve. Cavill was later cast in the role by Zack Snyder in 2013's Man of Steel, which was a reboot.
Jim Caviezel expressed great interest in the role of Superman but Singer refused to cast the then 36 year old actor, even though he had the right look and the age of a more mature Superman, simply because Singer thought he was "too famous" after the controversial The Passion of the Christ - ironic considering that Singer tried really hard to pass Superman off as a Christ figure and Caviezel had just played Jesus Christ himself.
During the initial fallout of the film's theatrical run Singer kept insisting in interviews that he would follow up with a more action packed sequel, he even likened his intended sequel to Star Trek II The Wrathof Khan repeatedly (specifically saying that now that he had the set up he would go "all Wrath of Khan on it.") But due to the polarizing audience response and a lot of debate over the film's box office the sequel ultimately got scrapped in favor of what eventually became the 2013 Man of Steel reboot.