He played 700 games in the NHL for the Sabres, Toronto Maple Leafs, Minnesota Wild, Ottawa Senators, and Edmonton Oilers.
Ennis began his major junior career in the Western Hockey League (WHL) with the Medicine Hat Tigers in 2005–06, recording 10 points in a 43-game rookie season.
Ennis went on to add 12 points in 20 playoff games as the Tigers defeated the defending WHL champion Vancouver Giants in a seven-game Ed Chynoweth Cup final.
The WHL title earned the Tigers a berth in the 2007 Memorial Cup, hosted by the runner-up Giants, whom they met in the tournament final once more, but lost by a 3–1 score.
[2] Ennis followed up his player of the week honours with a six-goal performance on February 27, scoring all his team's goals in a 6–2 win against the Prince Albert Raiders.
During the 2010–11 season, Ennis played all 82 games, registering 20 goals and 29 assists while the Sabres clinched the seventh spot in the Eastern Conference, securing a first-round matchup with the Philadelphia Flyers in the 2011 playoffs.
In an attempt to shake things up in Buffalo, head coach Lindy Ruff moved Ennis from left wing to centre, his natural position, playing alongside Drew Stafford and rookie Marcus Foligno.
The following season, during the 2012–13 NHL lockout, Ennis (along with best friend Jared Spurgeon) signed to play for the SCL Tigers of the National League A (NLA) in Switzerland.
Used as a depth forward, Ennis scored 8 goals and 22 points in 73 games and was a frequent healthy scratch through the 2018 playoffs in the Wild's first-round defeat.
On June 30, 2018, Ennis was bought-out from the remaining year of his initial five-year contract by the Wild, releasing him to free agency.
[13] Despite expressing interest in re-signing with the Maple Leafs, Ennis signed a one-year, $800,000 contract with the Ottawa Senators on July 1, 2019.
[17] After going unsigned through the NHL off-season, Ennis signed with SC Bern of the top tier Swiss league for the 2022–23 season.