"Pretty Little Liars" finally delivered answers to the questions that have been plaguing fans for years. The Season 6 summer finale brought its "A" game on all fronts, making it the most shocking and revealing episode of the hit ABC Family drama to date.

So, what happened in episode 10, titled "Game Over, Charles"? The finale kick-started with the girls racing after Alison (Sasha Pieterse) to the roof of Radley Sanitarium. But when viewers last left off, Alison was alone with Charles. “Pretty Little Liars” decided to start at the end to tell their story.

When the girls get to the roof, “A” is already up there... and about to jump. But surprisingly, the girls are trying to stop “A."

“Just because we know who you are doesn’t mean the game is over,” Spencer (Troian Bellisario) tells “A.”

“Don’t do this to your sister,” Emily (Shay Mitchell) and Aria (Lucy Hale) jump in. “You spent your whole life trying to get back to your family.”

And even Hanna (Ashley Benson) agrees, despite calling “A” a “b---h,” she doesn’t want her tormentor to jump. “We heard your story,” she says. “We understand.”

The police are below and it appears that “A” is going to jump, but then the episode cuts back to earlier that night. That’s when the truth about Charles is revealed.

The girls end up at the Carissimi Group building, where Charles has a special room with a live feed waiting for them. They get to watch Charles come face-to-face with Alison at Radley and reveal the whole story.

PLL 1 "A" set up a computer system at the Carissimi Group to allow Aria (Lucy Hale), Spencer (Troian Bellisario), Mona (Janel Parrish), Emily (Shay Mitchell) and Hanna (Ashley Benson) to listen to her story. Photo: ABC Family

Surprise: Charles is really CeCe Drake (Vanessa Ray)! How, you may ask? It’s actually quite simple.

As a young child Charles liked to cross-dress – something that Mr. DiLaurentis (Jim Abele) didn’t like. Charles adored his baby sister and one day tried to help calm her down when she was crying. When he couldn't get his mother's attention, he decided to give Alison a bath. Mr. DiLaurentis walked in to find Alison in the water with Charles standing over her. He forced Mrs. DiLaurentis (Andrea Parker) to admit their dangerous son to Radley.

Radley was terrible, but Mrs. DiLaurentis always brought Charles girls' clothing whenever she came to visit. In fact, she used to buy doubles of whatever she bought for Alison -- almost like they were twins.

While at Radley, Charles befriended Bethany Young – the girl who would end up in Alison’s grave. The two talked about running away together and concocting a new life based on a lie. But Bethany wasn’t the friend that Charles thought she was. One night, the two were hanging out on the rooftop at Radley when Toby’s mother, Marion Cavanaugh, came out. Charles was in a dress and didn’t want the “goody two-shoes” seeing him. He asked Bethany to help him, but Bethany pushed Mrs. Cavanaugh off of the roof and blamed it on Charles.

Pll 2 Spencer (Troian Bellisario, right) learns that Toby's (Keegan Allen, left) mother didn't commit suicide. She was killed by Bethany Young (not pictured), who framed it on Charles (not pictured). Photo: ABC Family

Mrs. DiLaurentis paid off Detective Wilden (Bryce Johnson) in order to protect Charles, but no one believed that it was really Bethany who pushed Mrs. Cavanaugh. They ended up prescribing Charles more drugs, almost killing him with the amount they gave him. That’s when Charles “died.” Knowing that they were wrong for messing up his prescription, Mrs. DiLaurentis worked a deal with Radley to write the paperwork killing Charles. There was a funeral, and Charles re-emerged as Charlotte -- also known as CeCe.

Despite Charles being dead, CeCe had to remain at Radley. However, the doctors did grant her access to leave to attend classes at the University of Pennsylvania. CeCe was too smart for school though. Everything she was learning, she already knew, so she decided to use that time to go see her family. That’s when she met Jason (Drew Van Acker). CeCe was beautiful, and Jason immediately fell for her. A brother falling in love with his brother? Twisted for sure, but CeCe reassures Alison that the two never did anything, which is why Jason was so cranky that summer.

Mrs. DiLaurentis didn’t know that Charlotte was CeCe until Jason asked if his girlfriend could join them for the summer in Cape May. Mrs. DiLaurentis agreed and finally met CeCe on the day they were supposed to leave. Needless to say, Mrs. DiLaurentis was not happy. However, Mr. DiLaurentis had no idea that CeCe was actually his son. He believed that Charles had died.

Things were going well for the reunited DiLaurentis family until that fateful Labor Day weekend. Bethany found out that her dad was having an affair with Mrs. DiLaurentis and snuck out of Radley wearing some of CeCe’s clothes – the yellow shirt Alison had on the night she died. CeCe found out and thought that Bethany was going to hurt her mom. So she decided to do something about that. Seeing a blonde in the yellow shirt, CeCe thought that Bethany was on her front yard. She took a rock and struck her on the head, only to find out that it was really Alison.

Mrs. DiLaurentis watched the whole thing. Although CeCe tried to convince her mom that she thought she was hitting Bethany, Mrs. DiLaurentis didn’t believe her. However, that didn’t stop her from burying her own daughter. She covered for CeCe and even paid off Detective Wilden to pick her up at the house and pretend to have found her outside of Radley.

So, who killed Bethany that night? It was Mona. So many people were mad at Alison, and she saw red when she spotted her. Bethany was dressed like Alison, and Mona didn’t look twice. She hit her and ran off without looking to see who it really was.

Mona eventually joined CeCe in Radley, and CeCe became interested in the “game” that she was playing with Alison’s friends. Since Mona was on so many drugs, Mona never realized who she was talking to. Before the doctors took her off the drugs, CeCe convinced Mona to help her escape Radley for good, and she jumped in on the “game.” It was while playing the game that CeCe started to see a person in a red coat following the girls. She thought that Alison might be alive but needed a test to be sure. CeCe decided to put the girls in danger – the fire at the lake house – because she knew that if Alison was alive, she’d come to rescue her friends. CeCe hired Sara to act as her Red Coat double in order to throw off the girls. However, the initial Red Coat, Alison, made her appearance that night.

PLL 3 Mona (Janel Parrish) didn't realize that she had been playing the game with CeCe (Vanessa Ray, not pictured) all along. Photo: ABC Family

So, why did CeCe keep playing the game if Alison was alive? She explains to Alison that New York was the perfect time to end the game, when the girls thought they killed “A.” However, the game was like a drug to her. She was really good at playing it and liked it. CeCe claims she’s not a bad person, but Alison lists off all the horrible things she did to everyone. CeCe’s response? No one was hurt! The only reason why she got mad and did bad things was because Alison wouldn’t listen.

“I know you don’t believe me, but I love all of my dolls,” she reveals, referring to Aria, Emily, Hanna and Spencer. “That’s why you’re all still alive, I would never let anything really bad happen to them.”

That’s not to say that CeCe didn’t kill anyone. She really did murder Wilden, because he found out that Alison was alive. As long as Wilden was alive, Alison could never come back to Rosewood. That’s why she employed the Black Widow – Sara again – to make sure that he was really dead.

But CeCe didn’t kill her mom. She tells Alison that she found their mom dead outside when she got to the house that night.

While CeCe is telling the story, it looks like Sara is trying to set up a bomb at Radley -- or maybe stop it. Mona helps the girls escape the Carissimi office, and they race to Radley to save Alison. Sara tells them to get out of there, seemingly to protect them. However, the bomb doesn’t go off – even when CeCe pushes the button.

“I tried to keep you safe,” Sara says to Emily. But Emily doesn’t care, and she punches Sara in the face.

During that distraction, CeCe races to the roof, which is where the “Pretty Little Liars” Season 6 summer finale began. But CeCe doesn’t jump. It ends with her getting down and telling the girls two words: “Game over.”

Episode 10 concludes on Labor Day weekend with the girls going their separate way for college, and Sara getting released from the hospital. Another time jump brings viewers five years forward where Alison is now “Mrs. Rollins,” a teacher. The Liars race into Alison’s classroom, telling her that they came back for her and to warn her that someone is there for her.