As one of the darker heroes within the DC universe, Batman has been pushed to his limits in more ways than just physically. Known for his strict moral code, Batman always tries his best to save every life, no matter how evil the villain at hand may be.

RELATED: The 10 Most Useless DC Villains, Ranked

Granted, things haven't always been easy for him, as Batman has regularly come very close to breaking his own code. Looking at some specific instances, here is our list of 10 villains Batman has almost killed, but didn't.

10 Superman

Batman vs. Superman in The Dark Knight Returns

Of course, Superman isn't generally considered to be a villain within the DC universe. However, during the popular The Dark Knight Returns miniseries, the character was significantly different from his main counterpart, and definitely the antagonist by the end of the series.

In one of Batman's most famous battles in all of comics, he and the Man of Steel battle it out to the point where Batman himself gets the upper hand, managing to nearly kill Superman in the process. Fortunately, Bruce manages to fake a heart attack and spare Superman's life, but not before making sure the Man of Steel knew he'd been beaten.

9 Red Hood

Red Hood fighting Batman in "Under the Hood"

Despite being the second Robin, there was a time when Batman nearly killed Jason Todd himself. Towards the end of the Under the Red Hood series, Jason forces Batman into a situation where he'd have to kill either him, or the Joker.

RELATED: DC: The 10 Worst Things Batman Has Ever Done

Of course, Batman aims to save both lives, though Jason makes it incredibly difficult to do so, forcing Bruce to throw a batarang and slice his throat. Though Jason would survive the encounter, he did come rather close to death once again, making it easy to see why this story is held in such high regard to so many years after originally hitting shelves.

8 Lex Luthor

Lex Luthor forces Nightwing to flatline in order to save him

The New 52's Forever Evil event was full of all sorts of twists and turns featuring some of the most popular DC heroes at the time. At one point though, in order to stop a bomb from going off, Lex Luthor actually stopped Nightwing's heart in order to shut down the bomb and save countless others.

Obviously, this move certainly didn't sit well with Batman, who lashed out at the Superman villain in a fit of rage. Fortunately, Nightwing woke up before too much could be done to Lex, but that doesn't change the fact that Batman appeared fully ready to kill him.

7 Talon

Towards the beginning of The Court of Owls, Batman eventually discovers that he doesn't need to hold back against their deadly army of Talons. Through the Court's own advances in science, Bruce discovers that the deadly assassins are in a weird state between life and death, kept moving by a serum that makes them virtually impossible to truly kill.

Though this meant that they'd be incredibly difficult to defeat in the long run, this also allowed Batman to break out the Thrasher Suit armor, making him a virtually unstoppable force for the army of Talons. Thankfully, this story not only gave readers an incredibly awesome battle scene, but it also allowed Batman to wreak some havoc without actually breaking his own code.

6 Darkseid

Batman Shoots Darkseid during Final Crisis

Darkseid is one of the only villains that Batman has intentionally broken his own rule for. Granted, when he shot the villain in the pages of Final Crisis with a special gun and bullet, he didn't quite manage to actually kill the Lord of Apokolips.

With this in mind, Darkseid was still badly wounded, and on the verge of death by the time other characters got to him. No matter how close he may have gotten though, it is a bit scary to think how Batman actually intended to kill one of the biggest villains in the DC universe.

5 Riddler

As a more recent example, it was revealed that Batman also sought to kill the Riddler at one point early in his career as the Dark Knight. Towards the end of The War of Jokes and Riddles, Batman actually attempts to stab Riddler, deeming the villain too dangerous to be kept alive.

RELATED: Batman: The 5 Most Genius Things The Riddler Has Ever Done (& 5 Dumbest)

Surprisingly though, Joker is actually the one to prevent this action, moving his hand in the way just in time. Though this moment of weakness was reveled to still haunt Batman even today, it is certainly interesting to think that Joker actually saved Batman from himself at one point.

4 Scarecrow

Scarecrow

Though it may not be the most popular Batman storyline ever, the Dark Knight still got pretty brutal with Scarecrow in the pages of Heart of Hush. After Hush surgically removes Catwoman's heart and gives Batman only a few hours to find it, Bruce quickly learns that Scarecrow had some intel on Hush's whereabouts.

After meeting up with the villain at Arkham Asylum, Batman very brutally electrocutes Scarecrow, while nearly drowning him at the same time. Though Dr. Crane quickly gave up the information he knew, saving his life in the long run, there's no telling just how close Batman would have come to killing him.

3 Bane

Throughout Tom King's Batman run, there are several times where Batman comes very close to actually killing Bane. From their fight in Santa Prisca, to either of their battles at Arkham, there were plenty of opportunities where Batman clearly wanted to put and end to his adversary.

RELATED: Batman: The 10 Worst Things Bane Has Ever Done, Ranked

Fortunately, even after everything Bane had done to him, Bruce wasn't actually the one to beat Bane in the end. However, their very brutal battles throughout King's run certainly gave Bruce plenty of opportunities to put a permanent end to the villain.

2 KGBeast

batman-57-kills-kgbeast

KGBeast is actually known for being one of the few villains Batman has actually "killed" over the years. Originally, after being sealed in a flooding vault by Batman, there was such pushback that it was later revealed that Batman called the police in time to save the villain.

More recently though, Batman nearly took the villain's life once again after tracking him down for shooting Nightwing in the head. While KGBeast did technically survive both encounters, there's no doubt that Batman could have easily finished him once and for all on both occasions.

1 Joker

Obviously, as Batman's greatest villain to date, Joker is easily the villain to push Batman to his greatest limits, nearly forcing the Dark Knight to kill him on many occasions. Whether its in storylines like Hush, Death in the Family, or any other major story with them, Batman has come scarily close to actually killing the Joker several times.

Fortunately, no matter how horrific Joker has become at times, Batman has almost always refrained from actually killing him. While there have been plenty of instances where an alternate Batman has killed the Joker, the main one has done a fair job of showing restraint thus far.

NEXT: 10 Enemies Batman Has killed