To be honest even I don't understand why it took so long. Our case was very straight forward...we had no interview and they only asked us to update them on my husband's new job once in 2014. I visited my husband twice and sent them all proofs of travel and communication.
According to my MP's office though it took long to do my husband's background checks because he works for the government and they scrutinize government employees more especially because of the geographic location that he's in (not sure how much of that is try though coz I never got an answer from cic regarding the wait).
We never had any forms missing or had any errors on any of the forms or errors in the medical exam but still took over 3 years to process. Guess they just took their sweet time with ours
plus our case was initially transferred to Islamabad and it was chilling there collecting dust between March 2013-March 2014 which is when they transferred it to New Delhi.
How long have you been waiting for?