The author behind the erotic trilogy shared the news on Twitter on Monday morning, first creating some excitement: "Good moaning all. Hold on to your hats...", followed closely by the big announcement.
"I am delighted to let you know that the lovely Dakota Johnson has agreed to be our Anastasia in the film adaptation of Fifty Shades of Grey."
Dakota Johnson will play the role of Anastasia Steele, a young innocent secretary who embarks on an intense journey with her boss Christian Grey.
Dakota, 23, appeared in The Social Network - in which she shared a love scene with Justin Timberlake - as well as in 21 Jump Street, The Five-Year Engagement and Beastly.
She is the daughter of Don Johnson, best known for TV shows Miami Vice and Nash Bridges, and his actress ex-wife Melanie Griffith.
E L James continued on Twitter in the style of her erotica novels, "So... Christian...", before breaking the news of the male lead, "The gorgeous and talented Charlie Hunnam will be Christian Grey in the film adaptation of Fifty Shades of Grey."
British actor Charlie Hunnam rose to fame after appearing in popular North East TV series, Byker Grove. He went on to appear in the thriller Sons Of Anarchy as Jackson 'Jax' Teller, and most recently starred in Guillermo del Toro's robot epic Pacific Rim.
E L James, who has sold 70 million copies of the trilogy so far, took to Twitter to thank everyone for their support: "To all the supporters, lovers and haters - thank you so much for the passion that you have for this project. You all rock. All of you. ♡"
Sam Taylor-Johnson is to direct the film, which is is due for release in August 2014.
What do you think of Dakota Johnson and Charlie Hunnam being cast for Fifty Shades of Grey?