Né au Puy-en-Velay, Arnaud Pic grandit dans la Haute-Loire, vivant dans la commune de Couteuges. Avant de se consacrer au rugby, il pratique le football au FC Paulhaguet, alors qu'il fait ses études au collège du Val de Senouire à Paulhaguet[réf. nécessaire].
Il est formé au sein des écoles de rugby du RC Langeac et du SC Brioude[2].
En 2014, Pic n'est pas conservé par le Stade montois après y avoir joué deux années. Il signe en faveur du club voisin landais, l'US Dax[5], un contrat d'une saison plus une optionnelle[6], faisant suite aux contacts avancés de l'été précédent[7]. Son contrat est prolongé à deux reprises pour une durée d'un an, en 2016[8],[9] et 2017[10]. Il se voit attribuer le rôle de capitaine pour la saison 2017-2018[3].
Après quatre saisons à Dax, Pic signe un pré-contrat dès le mois de janvier avec l'AS Béziers[11] ; il signe officiellement son contrat au mois de mai pour deux saisons[12]. À l'issue de l'intersaison 2020, il n'est pas conservé par le club[13].