The 38-year-old Rasmussen said in a televised news conference that he took performance-enhancing drugs between 1998 and 2010, both before and after he served a suspension for evading doping controls.
"I have cheated and lied. I'm ready to make good and take my punishment. I'm glad that I no longer have to lie to you, as I have done for so long," said Rasmussen, adding that he was quitting cycling immediately.
In a deal with Danish, American and Dutch anti-doping authorities as well as world anti-doping agency WADA, Rasmussen agreed to confess everything about his experiences with doping, including naming other guilty riders.
His agreement with the authorities prohibited him from disclosing further details at the moment, he said.
Rasmussen admitted to using EPO, insulin, growth hormones, cortisone and other drugs as well as getting blood transfusions.
Danish anti-doping authorities confirmed in a statement that Rasmussen had offered "substantial assistance" and met preconditions for a reduced sanction, meaning they would request a two-year ban instead of eight years.
In 2007, Rasmussen was kicked off the Tour de France by his team while leading the overall standings for lying about his whereabouts - information required under anti-doping regulations. He served a two-year suspension between 2007 and 2009.
His revelations came after American Lance Armstrong this month admitted he took performance-enhancing drugs during all his seven Tour de France victories, saying he was part of a doping culture in the sport.