”En statskupp har ägt rum”, sade Morales i ett tv-sänt tal enligt BBC:s spanska nyhetstjänst.
Han sade att han avgår för att få ett slut på de våldsamma protesterna mot valet i oktober, som krävt minst tre dödsoffer under de senaste veckorna.
”Mitt brott är att jag är indian, facklig ledare och kokaodlare”, sade Morales som styrt landet sedan 2006.
Han sade också att kampen fortsätter, dock utan att säga hur.
Förutom Morales avgår även vicepresidenten och senatens talman. Det är därför oklart hur landet ska styras.
Kritisk rapport om valet
Morales avgång följer på en dramatisk dag. Först riktade den panamerikanska samarbetsorganisationen OAS kritik mot hur presidentvalet den 20 oktober skötts.
I rapporten skriver OAS att valdatasystemet manipulerades, att underskrifter förfalskats och att det var osannolikt att Morales skulle ha vunnit redan i första omgången om valet gått rätt till.
Morales svarade med att gå med på organisationens rekommendationer om ett nytt val, med nya medlemmar i landets valkommitté.
Oppositionen fortsatte dock att kräva Morales avgång.
Militären tog ställning
När militären slöt upp bakom avgångskraven kastade Morales in handduken.
– Efter att ha analyserat den interna konfliktsituationen ber vi nationens president att avsäga sig sitt presidentmandat och låta fred och stabilitet återupprättas för Bolivias bästa, sade militärens överbefälhavare Williams Kaliman.
Enligt det officiella valresultatet fick vänstermannen Morales 47 procent av rösterna i det omstridda valet, mot 36,5 för Carlos Mesa, som företrädde en bred oppositionsallians. Eftersom försprånget var mer än 10 procentenheter förklarades Morales som vinnare redan i första omgången.
Anklagelser om fusk
Oppositionen hävdade dock att fusk förekommit, och protester och våldsamheter har lamslagit landet de senaste veckorna.
Morales blev president 2006 och är den förste statschefen i Bolivia som har indiansk härkomst.