A 24-year-old man named James Holmes is in police custody. NYPD police commissioner Ray Kelly told CBS News that Holmes described himself as Batman villain The Joker during the attack.
Kelly said: "He had his hair painted red, and he said he was The Joker - obviously the enemy of Batman,"
A 6-year-old child is among the dead and a 3-month-old baby was injured, say reports. Ten bodies are apparently still inside the cinema with their conditions currently unknown.
Holmes was arrested in a car park nearby in possession of a rifle, knife and handgun. He told police that explosives were stored at his home and offered no resistance when he was detained.
Witnesses have said that the man was wearing a gas mask and body armour before the incident, which occurred during a midnight screening of the new Batman film from Christopher Nolan.
Police chief Dan Oates said: "Witnesses tell us he released some sort of canister. They heard a hissing sound and some gas emerged and the gunman opened fire. The shooting apparently went on for some time."
On the condition and age range of the victims, an Aurora police report says: "The injured and dead include a wide age range. The conditions of the injured also vary, with some suffering very serious wounds."
The FBI is assisting in the investigation. A press conference will be held at 11am MST (6pm UK time) today (June 20).
An explosive device also reportedly went off during the incident, which injured several people in the building.
Brenda Stuart, of local station 850 KOA Radio, told Sky News that movie-goers thought that loud bangs in the cinema were part of the film.
"All of a sudden, they saw bullets flying, and a lot of people ran screaming from the theatre. Then tear gas went off," she explained.
CNN has quoted one witness as saying that he saw a "guy slowly making his way up the stairs and firing, picking random people".
One other gun was recovered from the theatre.
Watch a local news report on the incident below: