On November 5, 2011, Holland made his NHL debut. After scoring 11 points in 12 games to start the 2011–12 season with the Syracuse Crunch, the Anaheim Ducks' American Hockey League affiliate, Anaheim recalled Holland to play in a 5–0 road game loss against the Detroit Red Wings. He scored his first NHL goal on November 11, 2011, against Roberto Luongo of the Vancouver Canucks. On November 16, 2013, Holland was traded by the Ducks to the Toronto Maple Leafs in exchange for Jesse Blacker and two picks in the 2014 NHL Entry Draft. He scored his first goal as a Maple Leaf on November 21, 2013, against Marek Mazanec of the Nashville Predators. Holland wore number 24 for the Toronto Maple Leafs. On July 16, 2014, Holland agreed to a two-year contract extension with Toronto worth an annual average value of $775,000. After the 2015–16 season, he re-signed with Toronto on a one-year, $1.3 million contract. As the season began Holland was overshadowed by a plethora of young forward rookies including Auston Matthews, Mitch Marner and Connor Brown, among others. Due to limited roster space, Holland seldom played for the Maple Leafs, being scratched in 17 of the teams first 25 games, and seeing limited ice time in the eight games he did play. After being informed by general managerLou Lamoriello that the team would do their best to trade him, Holland was traded to the Arizona Coyotes in exchange for a conditional draft pick in 2018 on December 9, 2016; the condition was not satisfied. On July 1, 2017, as a free agent, Holland signed a two-year contract with the Montreal Canadiens, playing the second year on a one-way basis. Ahead of the 2017–18 season, Holland was unable to make the Canadiens' roster out of training camp and was assigned to Montreal's AHL affiliate, the Laval Rocket. With 18 points in 20 games with Laval, on November 30, 2017, Holland was traded to the New York Rangers in exchange for Adam Cracknell. To start the 2018–19 season, Holland played with New York's AHL affiliate, the Hartford Wolf Pack. On February 18, 2019, Holland was traded to the Chicago Blackhawks in exchange for Darren Raddysh. Assigned to the Rockford IceHogs, Holland continued his scoring pace in notching 7 goals and 16 points in 21 games to conclude the season. As an impending free agent from the Blackhawks, Holland opted to pursue a career abroad in agreeing to a two-year contract from Russian club, Avtomobilist Yekaterinburg of the KHL on May 22, 2019.