If you've been thinking, "Hey, why would two superheroes be fighting each other?" ever since Batman v Superman: Dawn of Justice started production, you're not alone. It seems strange that two of the caped crusaders would ever be in a position where they'd want to destroy one another. What could possibly compel them to break out the big guns to defeat a fellow do-gooder? Here's the answer, conveniently broken up depending on whether you want spoilers or not.
The Spoiler-Free Version
The movie begins during the giant battle sequence in 2013's Man of Steel. Superman (Henry Cavill) is trying to protect Metropolis from General Zod's crazy world engine, but there's a lot of collateral damage. Bruce Wayne (Ben Affleck) flies over from Gotham — which is just across the river — to see what the commotion is (LOL like his neighbours are arguing about dirty dishes or something) and sees Superman fighting with this gigantic thing. Buildings are tumbling down, including Bruce's office. That's why he looks so pissed while he's hugging that dusty little girl in the trailer.
So while yes, they're both good guys, Batman is a regular man of the people. He fights crime and eccentric human villains, like the Joker and the Riddler. Superman fights insane, otherworldly creatures and stuff. Yes, he defeats General Zod, but thousands of lives are lost in the process. To Batman, Superman is a questionable figure whose mere presence also might accidentally attract some dangerous aliens to earth. And yes, it's a heavy-handed metaphor for the topical issue of illegal immigration.
The Spoiler Version
OK, so Batman is already mad at Superman because of all of the aforementioned stuff, but there's more to it. At one point, The Flash (Ezra Miller) visits Batman through a time portal and tells him that his instincts about Superman are right and that Lois Lane (Amy Adams) is the key. Batman gets all fired up about killing Superman — cue the sexy training montage — but Superman has no beef with Batman, other than he keeps branding people with his Bat symbol. Enter Lex Luthor (Jesse Eisenberg), who kidnaps Superman's mom (Diane Lane) and tells Superman that either he produces the head of Batman or Mommy Martha dies.
Superman goes over to Gotham to talk to Batman like an adult, but Batman is all ready for him in his giant, metal anti-Superman suit. This is when the fight that's been so heavily teased occurs. It's less epic than it is silly; Superman spends half his time easily thwarting all of Batman's "clever" traps, and half his time trying to explain to Batman that he doesn't want to fight him, he just needs his help. It's really embarrassing for Batman.
Batman eventually weakens Superman with some krypton gas, but right before he kills him, Superman asks him to save Martha. Fun fact: Martha is also the name of Batman's slain mother, and this connection is enough for Batman to stop murdering Superman and instead they become BFFs. The end.