McSwain attended Chase High School in North Carolina, where he was an All-Americanfullback and also played linebacker on defense. He lettered in basketball and track. His number 35 was retired by the school. He accepted a football scholarship from Clemson University and became a starter as a freshman, in place of an injured Lester Brown. He finished with 443 rushing yards and 5 touchdowns. Including 120 yards on 18 carries versus Duke University. He was named the conference's rookie of the year. In 1980, he was the team's second leading rusher with 544 yards, including 272 yards on 37 attempts in the final three games. He was a slashing type of a runner. In his last two years, he would form with co-starter tailback Cliff Austin a dynamic duo in a backfield known as the "McBackfield", that also included fullback Jeff McCall. In 1981, he had a career-best 692 rushing yards and 7 touchdowns, including a single-game career-high of 151 yards and 2 touchdowns on 25 carries, in a season-ending 29–13 victory over the University Of South Carolinato cap an 11–0 record. In the Orange Bowl, although he had only 14 rushing yards, he made a key 10-yard run during the drive that helped Clemson defeat Nebraska University for an unbeaten season and the national championship. As a senior, he posted 641 rushing yards and 7 touchdowns. Against North Carolina State University, he registered 14 carries for 129 yards and one touchdown. He finished his college career with 2,320 rushing yards and 23 touchdowns on 483 carries. He also practiced track and field, running the first leg of the 1980 ACC champion 4 × 100 metres relay team.
McSwain was selected by the Dallas Cowboys in the fifth round of the 1983 NFL Draft. He was also selected by the Washington Federals in the 1983 USFL Territorial Draft. In his first career pre-season appearance, he had a game to remember against the Miami Dolphins, scoring 2 touchdowns in less than 2 minutes. After the first regular season game, he was placed on the injured reserve list with a torn tendon in his right ring finger and was replaced with Gary Allen. The next year, he posted 20 kickoff returns for 403 yards. He was waived before the start of the 1985 season.
After the players went on a strike on the third week of the 1987 season, those games were canceled and the NFL decided that the games would be played with replacement players. McSwain was signed to be a part of the New England Patriots replacement team. He was a backup player and registered 23 rushing yards, before being released at the end of the strike.
Personal life
McSwain works as an athletic director and track coach at Chase High School in North Carolina. He was born into a family of 13 children. His brother Rod McSwain also played in the NFL for the New England Patriots.