Do you have 40 quarters paid into social security (10 years filing taxes)?
If not, you might want to apply for Supplemental Disability instead of regular disability to save a rejection.
Or you can apply for regular disability and get rejected, then apply for supplemental.
Ask them at the office which one you should apply for.
It only took my friend 4 months to hear back from disability after he got all his paperwork done, so no, it doesn't take 3 years.