Il commence sa carrière junior en 2006-2007 alors qu'il joue ses premières parties dans la Ligue de hockey de l'Ouest avec les Rockets de Kelowna. Barrie est repêché lors du repêchage de 2009 de la Ligue nationale de hockey par l'Avalanche du Colorado, à la . Il connait sa meilleure saison en 2009-2010 alors qu'il remporte un trophée et est nommé dans la 1 équipe d'étoiles de la ligue. Le , il signe son contrat d'entrée LNH (trois ans) avec l'Avalanche.