Ferdinand missed a random dope test on September 23 at his club's Carrington training ground, though he passed a test 36 hours after the scheduled one.
The FA had delayed making a decision on the case while it considered all the evidence, including Ferdinand's mobile phone records.
In a statement on Wednesday the FA said Ferdinand had been charged in relation to Regulation 1(c) of its Doping Control Regulations.
"Regulation 1(c) refers to 'the failure or refusal by a player to submit to drug testing as required by a competent official'," the FA said.
Under the rules Ferdinand faces a possible two-year ban from playing.
The 24-year-old has 14 days to respond to the charge and Manchester United said in a statement on Wednesday: "The player will be responding to the charge and seeking a personal hearing in accordance with FA procedures."
World body FIFA has said it will wait to see what action the English FA takes before deciding whether to impose any punishment itself.
The missed test meant Ferdinand was excluded from the England squad for their decisive Euro 2004 qualifier in Turkey on October 11 on the orders of FA chief executive Mark Palios.
His omission was sharply criticised by United and the players' union, while Ferdinand's England team mates threatened to strike unless he was reinstated.
However, the FA refused to back down and the crisis was averted, only after the players said they had been let down by their governing body.
United paid an English transfer record 30 million pounds ($50.72 million) for Ferdinand when he joined them from Leeds United last year.
Born in Peckham, south London, Ferdinand started his career at West Ham United. He has won 33 England caps.