Faits : A. Par jugement du 3 décembre 2013, le Tribunal correctionnel de l'arrondissement de l'Est vaudois a condamné X._ pour infraction grave à la loi fédérale sur les stupéfiants (ci-après: LStup) à une peine privative de liberté de 4 ans sous déduction de 85 jours de détention provisoire, a ordonné la confiscation et la dévolution à l'Etat d'objets séquestrés et a mis les frais de la cause à la charge du prévenu. La détention pour des motifs de sûretés a été maintenue. B. Statuant sur appel de X._ et sur appel joint du Ministère public, la Cour d'appel pénale du Tribunal cantonal vaudois a, par jugement du 7 avril 2014, confirmé la décision de première instance et a mis les frais d'appel par moitié à la charge de X._, le solde étant laissé à la charge de l'Etat. En substance, il est reproché à X._ d'avoir, entre le mois de mai 2011 et le 12 juillet 2011, par le biais de plusieurs transactions effectuées notamment à Genève, Vevey, Berne et en Valais, commercialisé au total au moins 600 grammes de cocaïne brute d'une valeur de l'ordre de 34'000 francs. Au moment du jugement cantonal, le casier judiciaire du recourant comportait six condamnations prononcées entre le 5 avril 2006 et le 3 septembre 2013. Parmi celles-ci figurent trois condamnations pour infractions à la LStup, à des peines allant de 10 jours-amende à 30 jours d'emprisonnement. C. X._ forme un recours en matière pénale auprès du Tribunal fédéral contre le jugement cantonal et conclut, avec suite de frais et dépens, à sa réforme en ce sens qu'il soit condamné pour infraction à la LStup à une peine privative de liberté de 3 ans, sous déduction de 85 jours de détention provisoire, avec une partie de peine à exécuter de 18 mois et un délai d'épreuve de 5 ans. Subsidiairement, il conclut à l'annulation du jugement cantonal et au renvoi de la cause à l'autorité cantonale pour nouveau jugement. Il sollicite en outre l'assistance judiciaire. 