Bernardeschi futbol kariyerine Atletico Carrara ve Polisportiva Ponzano takımlarında başladı. 2003 yılında Fiorentina altyapısına geçti ve burada 10 yıl geçirdikten sonra 2013-14 sezonunda Crotone'de kiralık olarak bir sezon geçirdi. Ertesi sezon Fiorentina'ya geri döndü. Temmuz 2017'de Juventus'a transfer oldu. Burada üç kez Serie A şampiyonluğu, ikişer kez İtalya Kupası ve İtalya Süper Kupası şampiyonluğu yaşadı. Temmuz 2022'de Juventus ile olan sözleşmesinin sona ermesinin ardından Bernardeschi serbest oyuncu oldu ve Toronto FC ile sözleşme imzaladı.
Uluslararası düzeyde Bernardeschi, 2011'den bu yana İtalya'yı gençler düzeyinde temsil etti ve 2016'da ilk kez A millî maçına çıktı ve UEFA Euro 2016 ve UEFA Euro 2020 kadrolarında yer alıp; 2020 Avrupa Şampiyonası'nı kazandı.
Bernardeschi futbol oynamaya altı yaşında Atletico Carrara'da başladı. Bir yıl sonra Empoli'nin futbol okulu Ponzano'ya transfer oldu ve 2003 yılında dokuz yaşındayken Fiorentina'ya katıldı.
Fiorentina altyapısından geçtikten sonra 2013-14 sezonunu Serie B'de Crotone'de kiralık olarak geçirdi. 19 yaşında ilk profesyonel maçına 8 Eylül 2013'te Pescara karşısında 75. dakikada Soufiane Bidaoui'nin yerine oyuna girerek çıktı. Sezon sonunda Bernareschi 39 maçta 12 gol attı ve Crotone oyuncunun sözleşmesinin yarısını ortak mülkiyetle satın alma opsiyonunu kullandı.
Fiorentina Yılları
20 Haziran 2014'te Fiorentina, Bernardeschi'nin sözleşmesinin Crotone'ye ait olan yarısını resmen geri aldı ve Vincenzo Montella yönetimindeki A takıma dahil oldu. 2014-15 sezonu boyunca tüm müsabakalarda 10 maça çıktı ve üç gol attı, Kasım 2014'ten itibaren ayak bileğindeki kırık nedeniyle kısmen sakatlandı. Serie A'daki ilk maçına 14 Eylül 2014'te, henüz 20 yaşındayken, Genoa ile evlerinde 0-0 berabere kaldıkları maçın 57. dakikasında yedek kulübesinden gelerek çıktı. Dört gün sonra, UEFA Avrupa Ligi'nde Guingamp'a karşı evlerinde aldıkları 3-0'lık galibiyetle Avrupa'daki ilk maçına çıktı ve aynı zamanda kulüp için ilk golünü attı. Sakatlığının ardından takıma döndükten sonra, Serie A'daki ilk golünü sezonun son maç gününde, 31 Mayıs 2015'te Chievo'ya karşı evlerinde aldıkları 3-0'lık galibiyette attı.
2015-16 sezonunun başında, daha önce Giancarlo Antognoni ve Roberto Baggio gibi isimlerin giydiği 10 numaralı formayı giydi. 26 Kasım 2015'te Bernardeschi, UEFA Avrupa Ligi grup aşamasında Basel ile deplasmanda 2-2 berabere kaldıkları maçta iki gol attı. 6 Şubat 2016'da Bernardeschi, Serie A'daki ikinci golünü Bologna ile deplasmanda 1-1 berabere kaldıkları maçta attı. Sezonun son maçında Lazio'ya karşı bir gol atıp iki asist yaparak takımının galibiyetinde parladı.
Juventus Yılları
2017-18 Sezonu
Bernardeschi, 24 Temmuz 2017 tarihinde Fiorentina'nın en büyük rakiplerinden biri olan Juventus ile 40 milyon Avro karşılığında beş yıllık sözleşme imzaladı. Medyada 10 numaralı forma için olası bir aday olarak gösterilse de, sonunda 33 numarayı seçti ve şunları söyledi: "10 numara sevdiğim bir numara ama onu hak etmem gerekecek. Bu noktada 33 numarayı almak en doğru seçim." 13 Ağustos'ta, 2017 Supercoppa Italiana'da Lazio'ya 3-2 yenildikleri maçta yedek olarak oyuna girerek ilk kulüp maçına çıktı. UEFA Şampiyonlar Ligi'ndeki ilk maçına 12 Eylül'de, Barcelona'ya deplasmanda 3-0 yenildikleri maçta Rodrigo Bentancur'un yerine ikinci yarıda oyuna girerek çıktı. 1 Ekim'de Juventus formasıyla ilk kez 11'de başladı ve Atalanta ile deplasmanda 2-2 berabere kaldıkları maçta Gonzalo Higuaín'in asistini de yaparak kulüp için ilk golünü attı. İlk Şampiyonlar Ligi golünü 5 Aralık'ta yedek kulübesinden gelerek Olimpiakos karşısında deplasmanda alınan 2-0'lık galibiyette kulübünün ikinci golünü atarak kaydetti; bu sonuç Juventus'un grup aşamasını ikinci sırada tamamlayarak turnuvanın son 16 aşamasına yükselmesini sağladı. 9 Şubat 2018'de Floransa'ya dönen Bernardeschi, maç boyunca Fiorentina taraftarlarının kaba hakaretlerine maruz kaldı; ikinci yarıda attığı frikik golü ile kalabalığı susturdu.
Bernardeschi, 2017-18 sezonunu Serie A şampiyonu olarak tamamladı. İtalya Kupası'nın finalinde Milan'ı 4-0 yenen kadronun parçası oldu ve Juventus ile 2017-18 İtalya Kupası'nı kazandı. Bernardeschi, Juventus formasıyla tüm kulvarlarda 41 maça çıktı ve 5 gol, 6 asistlik performans sergiledi.
2018-19 Sezonu
Bernardeschi, 2018-19 sezonundaki ilk golünü 18 Ağustos 2018'de Juventus'un Serie A'daki açılış maçında attı ve Chievo'ya karşı deplasmanda alınan 3-2'lik galibiyette uzatma dakikalarında galibiyeti getiren golü kaydetti. 23 Eylül'de Frosinone'yi 2-0 yendikleri maçta, Miralem Pjanić'in asistiyle golü attı. 16 Ocak'ta oynanan 2018 Supercoppa Italiana maçında AC Milan'a karşı forma giydi ve İtalya Süper Kupası'nı kazandı. 12 Mart 2019'da Cristiano Ronaldo'nun hat-trick yaptığı ve Atlético Madrid'i 3-0 mağlup ettikleri Şampiyonlar Ligi maçında Bernardeschi, penaltı vuruşuyla sonuçlanan harika bir depar attı ve bir de asist yaptı.