Garner attended Brashear High School in the Beechview neighborhood of Pittsburgh, Pennsylvania. As a senior, he recorded 27 receptions for 540 yards and 10 touchdowns. He also recorded 60 tackles, six sacks, two blocked punts, and two interceptions on defense. For the season he was an All-State Class AA selection by the Pennsylvania Sports Writers as an all-purpose player. He was also named Pennsylvania Football News All-Class AAA and Pittsburgh Post-Gazette City League Player of the Year. While at Brashear he recorded 83 receptions for 1,267 yards and 21 touchdowns on offense and 149 tackles, 10 sacks and four interceptions on defense, for his career. He was also a two-time team captain and team Most Valuable Player. He was ranked Pennsylvania's 18th overall prospect by Scout.com, 24th by SuperPrep and 35th by Rivals.com. He was also selected to play in the Big 33 Football Classic. He was also an honor roll student.
In 2012, Garner transferred to Pitt, where he had to sit out the season due to NCAA rules. In 2013, as a redshirt junior, Garner appeared in all 13 games, with five starts. He played at tight end and H-back but also at wide receiver, after starterDevin Street was injured. For the season, he recorded 33 receptions for 391 yards and three touchdowns. As a redshirt senior in 2014, he appeared in eight games, with nine starts at wide receiver opposite Tyler Boyd. For the season, he recorded 17 receptions for 201 yards and two touchdowns. While at Pitt, he majored in social sciences.
Garner signed with the Brooklyn Bolts, a member of the Fall Experimental Football League. Because of his experience as a fullback, Garner served as a hybrid player in the Bolts backfield. Over the course of the 2 game FXFL season, Garner recorded 17 rushes for 57 yards and a touchdown, plus 4 catches for 15 yards and another score. Garner's two touchdowns accounted for one third of the touchdowns scored by the Bolts that season.
Garner was signed to a futures contract by the Denver Broncos on January 13, 2016. He was released on August 29, 2016.
Buffalo Bills (second stint)
On October 5, 2016 Garner was signed to the Bills practice squad. On October 21, he was promoted to the Bills active roster. He was released on October 28 and was re-signed to the practice squad on October 31, 2016.
In April, Garner participated in The Spring League, a startup developmental league. Garner was invited to a tryout with the Washington Redskins. On May 15, 2017, Garner was officially signed by Washington. On September 2, 2017, Garner was waived by the team and was signed to the practice squad the next day. He was promoted to the active roster on December 27, 2017.. On August 9, 2018, Garner injured his ACL during the first pre-season game, which ended his season. He was waived on June 6, 2019.
Kansas City Chiefs (second stint)
Garner was signed by the Kansas City Chiefs on August 12, 2019. He was waived on August 31, 2019.
Personal life
Garner is the son of Marcellus and Mechella Garner and has two sisters and one brother. His cousin Justin King was a fourth round selection in the 2008 NFL Draft by the St. Louis Rams.