Faits: A. Par jugement du 17 juin 2010, le Tribunal pénal de la Sarine a reconnu X._ coupable de crime contre la loi fédérale sur les stupéfiants. Il l'a condamné à une peine privative de liberté ferme de 24 mois, peine partiellement complémentaire à celle qu'il lui avait infligée le 23 juin 2008, sous déduction de la détention avant jugement. Il a révoqué le sursis accordé le 23 juin 2008, qui portait sur une peine privative de liberté de 26 mois prononcée notamment pour escroquerie, contrainte, séquestration et crime contre la loi fédérale sur les stupéfiants. En bref, les premiers juges ont retenu à la charge de X._ les faits suivants: - un trafic de marijuana et de cocaïne avec A._, - l'achat d'environ 9 kilos de chanvre à B._, entre la fin 2007 et la fin 2008, - la détention de 6 kilos de marijuana dans sa cave, depuis une date comprise entre fin avril et fin septembre 2008, jusqu'à sa découverte par la police en octobre 2009, - la vente à C._, au début 2009, de 500 grammes de marijuana, - la culture, dans un fortin militaire à Charmey, de chanvre indoor, en 2009, dans le but de récolter 1 kilo de marijuana. B. Par arrêt du 30 mai 2011, la Cour d'appel pénal du Tribunal cantonal du canton de Fribourg a admis partiellement le recours formé par X._ et réformé le jugement de première instance. Elle a acquitté X._, au bénéfice du doute, du chef de prévention de crime contre la loi fédérale sur les stupéfiants, pour la remise de cocaïne et de marijuana à A._ et réduit en conséquence la peine privative de liberté ferme à quinze mois. Pour le surplus, elle a maintenu le jugement de première instance. C. Contre cet arrêt cantonal, X._ dépose un recours en matière pénale devant le Tribunal fédéral. Il se plaint d'arbitraire dans l'établissement des faits en relation avec l'achat de 9 kilos de chanvre à B._ (art. 9 Cst.) et conteste la mesure de la peine (art. 47 CP) ainsi que la révocation du sursis antérieur (art. 46 CP). Il conclut à son acquittement du chef de prévention de délit à la LStup pour le cas B._, au prononcé d'une peine privative de liberté ferme de quatre mois et à la non-révocation du sursis antérieur ; subsidiairement, il conclut à son acquittement pour le cas B._ et au renvoi de la cause à la cour cantonale pour nouveau jugement ; plus subsidiairement encore, au prononcé d'une peine de huit mois et à la non-révocation du sursis antérieur. En outre, il sollicite l'assistance judiciaire. Le Ministère public fribourgeois forme également un recours en matière pénale devant le Tribunal fédéral, dénonçant l'arbitraire dans l'établissement des faits en relation avec la remise de cocaïne à A._. Il n'a pas été ordonné d'échange d'écritures.