My friend said that an anti-hero does not care about anything and would kill innocent people.
No, someone who kills innocent people is a villain. With the exception of the innocent casualties being collateral, but this could apply to a hero as well and is not the definition of an antihero.
However, it would be correct to say that an antihero is not averse to killing those who deserve it (in the antihero's opinion).
A hero is defined by the following traits
- Actively fights the bad guys.
- They do what they do because it is the right thing to do.
- Holds themselves to the moral standard of the good guys.
A great example is Batman. He refuses to kill anyone, because he considered it a bad solution to the problem of fighting crime. Even when it would help, e.g. killing the Joker to prevent many future deaths; Batman sticks to this principle.
An antihero is defined by the following traits:
- Fights the bad guys.
- They do what they do because they feel it needs to be done.
- Tends to hold themselves to their own moral standard, not those of others.
Let's look at the Punisher. He's a classic antihero. The enemies he fights are objectively bad people. In the same plot, Batman (or any protagonist hero) would fight these bad guys as well.
However, the Punisher does not fight the bad guys because it is the right thing to do. He fights them because he has a personal score to settle. He went after Howard Saint because Saint had killed his entire family (an assassination which the Punisher himself miraculously survived).
The Punisher also does not necessarily align himself with the moral code of the good guys. More often than not, they go by their own moral code. An antihero hero defines a 'bad guy' by their own moral code, not the moral code of "good people" in general.
If you see a story in which the Punisher fights the same enemy that a hero is fighting, you will see that in most cases, the Punisher and the other hero will coincidentally be fighting the same enemy, each for their own reason.
Antiheroes can be swayed to fight for good if it is really necessary; but they consider it as doing a favor for someone; not as doing their duty. And it will definitely not become a habit.
Some examples to highlight the differences:
- Frank Underwood, as much as he tries to present himself as an antihero, is a villain. He kills innocents for his own gain.
- Mr. Freeze is most often considered a villain. However, I see him as an antihero in most cases. He does what he does because he needs to cure his wife and keep her alive until the cure is made. He breaks the law because he does what he feels is necessary. If there were a legal way for him to save his wife, he would pursue it. He only became Mr Freeze in absence of a legal way to continue his research, not for evil's sake. He is also not averse to helping Batman from time to time. Although I do have to note here that Mr Freeze is an antihero who comes very close to being a villain. But I can't remember him ever killing innocents, so his villainy is very minor. He steals and causes mayhem, but then again, the Punisher kills and causes mayhem and we do not consider him a villain.
- Wolverine is the opposite of Mr Freeze. He is an antihero who comes very close to being a hero. He does not fight to "do good", he fights those who oppose him. Although this can also mean protecting those who he cares about (e.g. Xavier's students), Logan rarely does anything he really does not want to do. There are cases where he actively chooses to not engage the "villain of the plot", because Logan thinks there is some merit to the villain's line of thinking. This shows that he follows his own moral code over that of others.
- Colonel Nathan R Jessup is not a villain (although many people seem to think he is the villain of the movie). He is not an evil man. His goal is protecting his country. However, his methods have crossed moral boundaries. Why did he cross these boundaries? I quote the man himself: "I have a greater responsibility than you could possibly fathom". In other words, he is arguing the necessity of the questionable deeds he has undertaken, because it suits his goal. Regardless of whether it is considered immoral or not.
- Jack Bauer starts off as a hero. But as the season's plot progresses, his actions are morally grey, e.g. using torture to extract information from someone. The intention (avoiding a mass terrorist attack) is good, but his methods are questionable. 24 very much revolves around the slippery slope that Jack finds himself on, and whether he turns into an antihero or not.
- In Watchmen, most of the Watchmen try to adhere to the hero stereotype. They are who they are because they want to help society. Rorschach is an exception to this. He has no remorse about killing a serial killer, for example. Because Rorschach decides who gets to live based on whether they broke his moral code or not.
- Many villains, when justifying their actions, will portray themselves as antiheroes. It almost always boils down to "I do what is necessary, the world has forced my hand". This is driven by their own morals, rather than those of society. Especially in origin stories, some villains start off as antiheroes, and it is only when they cross the line (kill innocents) that the hero will actually take them down.
TL;DR
- You are a hero if you try to do good, and hold yourself to the highest moral standard (no revenge, no killing where avoidable, save everyone's life)
- You are a villain if you do evil for evil's sake, kill innocents, or cause societal mayhem.
- You are an antihero if you have a personal agenda and do not hold yourself to any moral code other than your own. If you can describe someone's actions as being part of an ongoing vendetta, then he is an antihero (or a villain, if other villain traits apply to this person).
Forgot something
I forgot to specifically comment on Law Abiding Citizen.
Clyde Shelton, like you said, has a reason, which was revenge, to do what he does.
This makes him a textbook antihero. He fights corruption, in a way that is morally questionable (straight up murder). However, he only exacts punishment on those who he deems worthy of punishment. He is not a loose cannon, nor does he harm innocents.
However, as the movie progresses, Clyde's argument for the necessity of fighting corruption falls apart. Maybe you would agree with his first few victims, as these are people who intentionally acted selfishly and illegally for personal gain.
However, consider the judge. While she is an absolute cunt of a woman, who presided over the corrupt trial; she is not actually guilty of any crime.
As far as I can remember the movie, the judge is the first victim who can be considered an innocent. Even by Clyde Shelton's argument of the necessity of fighting corruption, the judge should not have been considered guilty.
This is why Shelton dies in the end. He has fallen down the slippery slope of being an antihero, and has let his anger devolve himself into becoming a villain.
Also, his methods became more and more reckless. The first murders were targeted strikes, that only harmed the intended target. But the last attempted murder is plain old bomb That is not a targeted strike.
This highlights that Clyde has stopped caring about innocent collateral casualties. He has chosen to forgo any form of morality about killing innocents, because he is blinded by his personal agenda.