Faits: A. Par jugement du 9 août 2012, le Tribunal de police de l'arrondissement de Lausanne a condamné X._ pour abus de confiance et contravention à la loi fédérale sur les stupéfiants à une peine pécuniaire de 150 jours-amende à 30 francs, sous déduction de deux jours de détention avant jugement, avec sursis pendant deux ans, ainsi qu'à une amende de 600 francs, la peine privative de liberté de substitution étant fixée à six jours. Le Tribunal de police l'a en outre condamné au paiement immédiat à la Banque A._ SA du montant de 25'000 francs, avec intérêt de 5% l'an dès le 28 décembre 2010. B. Saisie d'un appel du condamné, la Cour d'appel pénale du Tribunal cantonal vaudois a confirmé la décision attaquée par jugement du 3 décembre 2012. Elle s'est fondée sur les principaux éléments de fait suivants. X._, employé de la Banque A._ SA depuis le 31 mai 2010, était notamment en charge d'attester de l'état du coffre à l'issue de chaque journée de travail, tâche accomplie pour la dernière fois le lundi 27 décembre 2010. Il s'agissait de dresser l'inventaire de l'argent se trouvant dans la caisse du guichet et de celui demeuré dans le coffre à titre de réserve. Le lendemain, le 28 décembre 2010, sous prétexte de maladie, le recourant ne s'est pas présenté à son travail. Le même jour, une employée, B._, a constaté la disparition de 25'000 francs en espèces lors du contrôle usuel de caisse. A compter du 29 décembre 2010, X._ n'a plus été joignable ni par son employeur, ni par sa famille. Il a été interpellé le 2 janvier 2011. C. X._ forme un recours en matière pénale au Tribunal fédéral. Il conclut, sous suite de frais et dépens, à la réforme du jugement attaqué en ce sens qu'il est libéré des chefs d'accusation de vol et d'abus de confiance, qu'il est constaté qu'il s'est rendu coupable de contravention à la loi fédérale sur les stupéfiants et qu'il est condamné à une amende de 600 francs. Il conclut en outre au rejet des conclusions civiles de la Banque A._ SA et à l'allocation d'indemnités au sens de l'art. 429 CPP, soit 9'500 francs à titre de frais de défense, 2'000 francs à titre de tort moral et 400 francs à titre d'indemnisation pour les deux jours de détention subis. Il sollicite l'assistance judiciaire.