Cunningham was the Eagles' second-round pick in the 1985 NFL Draft. Cunningham was also sought by the United States Football League's Tampa Bay Bandits that same year. Eagles owner Norman Braman refused to negotiate with Cunningham if he accepted offers from the Bandits. Ultimately, the USFL folded, thus ending that issue. In his rookie season he played sparingly as a backup to veteran Ron Jaworski but made a big splash with his uncanny scrambling ability, though he completed just 34 percent of his passes and threw just one touchdown against eight interceptions. In 1986, new head coach Buddy Ryan arrived in Philadelphia and made wholesale changes, many of them unorthodox, mostly due to his defensive-minded philosophy and lack of understanding in the offensive side of the ball. At the quarterback position, Ryan designated 35-year-old Ron Jaworski the starter but would replace the aging veteran with the fleet-footed Cunningham in third-and-long situations where the youngster’s scrambling would presumably put the defense on its heels. After a hand injury to Jaworski in week 10, Cunningham would replace him as the Eagles’ starter. Cunningham was permanently handed the Eagles' starting job for the 1987 season. Cunningham was said to have reached "elite" status during the 1988 season, as he was elected by league players as the NFC starting quarterback for the AFC-NFC Pro Bowl (the first black quarterback to ever be elected a starter). That same year, he combined with fellow Eagle Pro Bowler Reggie White to lead the Eagles to the NFC Eastern Division Championship. In the 1988 Divisional Playoffs, Cunningham threw for 407 yards during the "Fog Bowl" 20-12 loss against the Chicago Bears. In the subsequent Pro Bowl a few weeks later, Cunningham was named game MVP as the NFC defeated the AFC, 28-3.
In 1989, Cunningham, who had been an all-conference quarterback and punter while at UNLV, unleashed a 91-yard punt against the Giants on December 3, the longest in Eagles history (and the fourth-longest ever). He had 20 punts during his career, with an average of 44.7 yards per punt.
In a 1990 game against the Buffalo Bills, Cunningham, throwing from his end zone, was about to be sacked by Bruce Smith from his blind side. Cunningham ducked and threw a pass 60 yards to wide receiver Fred Barnett, resulting in a 95-yard touchdown. That same year, Cunningham finished with 942 rushing yards, 3rd most ever for a quarterback, 10th best in the league.
In 1991, Cunningham's season came to an abrupt end when he was tackled by Bryce Paup of the Green Bay Packers and tore his anterior cruciate ligament in the 1st game of the season. He would return to the Eagles completely healed the following season, and led the team to its first playoff victory in 12 years. However, it was evident that the injury he suffered took away much of his speed and athleticism. The 1993 and 1994 seasons would be riddled by a series of nagging injuries and a transition to the West Coast Offense that eventually led to his benching in favor of veteran Rodney Peete. Feeling as if the fans and organization did not fully appreciate his contributions to the team's success, as well as being unhappy with his role as a back-up, Cunningham retired from football after the 1995 season.
Cunningham joined the Vikings in 1997 after being out of football in 1996. There he reunited with former Eagles wide receiver Cris Carter. In his first year with the Vikings, he orchestrated two late touchdown drives to defeat the New York Giants in an NFC Wild Card game at Giants Stadium, 23-22. However, the Vikings lost in the Divisional Round to Steve Young and the San Francisco 49ers.
Cunningham enjoyed the greatest season of his career in Minnesota during the 1998 campaign when he guided the Vikings to a 15–1 regular season record with 34 touchdown passes, only 10 interceptions, and 3,407 passing yards. Cunningham had a good supporting cast that year with Cris Carter, Rookie Randy Moss, and Jake Reed at Wide Receiver and Robert Smith and Leroy Hoard at Running Back. Cunningham led the league with a 106.0 passer rating while the Vikings posted a then-NFL record 556 points during the 1998 season, making him the first black quarterback to lead the league in that category. Cunningham claimed the Vikings Monday night 37–24 victory over the Green Bay Packers was "the greatest night of my football career". Cunningham threw for 442 yards and 4 touchdowns in a game where Brett Favre, in the prime of his career, was benched at the end of the first half. However, the Vikings ended up being the first 15-1 team to fall short of the Super Bowl, losing to the underdog Atlanta Falcons in the conference championship game by a field goal.
During the early stages of the 1999 season, after throwing 9 interceptions in just 6 games, Cunningham was benched once again—this time in favor of Jeff George. After the team announced that 2nd-year quarterback Daunte Culpepper would be the starter prior to the 2000 season, Cunningham was released.
Shortly before the 2000 season, Cunningham signed with the Dallas Cowboys to serve as backup to Troy Aikman. After a series of concussions ended Aikman's season, and ultimately his career, Cunningham once again took the helm at quarterback. Despite posting a 1–2 record as a starter, he put up respectable numbers (849 yards passing with 6 touchdowns and 4 interceptions). One notable occurrence during his time with the Cowboys was a return to Philadelphia. Cunningham started the game and dueled the new Eagles quarterback, Donovan McNabb. The game was decided in overtime, with an Eagles field goal giving them the 16–13 victory. Cunningham received a mixed reception of cheers and boos upon his return to Philadelphia. A 5–11 subpar year for the Cowboys led to major roster changes, and Cunningham was one of the many changes. He was released after the 2000 season, but then signed with the Baltimore Ravens.
Cunningham served a backup to Elvis Grbac in 2001. He went 2–0 as a starter in Baltimore, and retired after the season.
In his final 10 NFL seasons, Cunningham played in only 80 games, but finished his 16-year career completing 2,429 of his 4,289 attempts for 29,997 yards and 207 touchdowns, with 134 interceptions. He was sacked 484 times, third-most all time behind (2nd) John Elway with 516 sacks, and (1st) Brett Favre with 525 sacks. Cunningham also rushed for 4,928 yards on 775 carries and 35 touchdowns. He retired after the 2001 season as the NFL's all-time leader in rushing yards and carries for the quarterback position, (a record broken in 2011 by Michael Vick), and tied for fourth with Steve Grogan in rushing touchdowns by a QB. Cunningham also averaged 30.6 rushing yards per game during his career—second most all-time for quarterbacks, behind Michael Vick.
After retirement, Cunningham returned to UNLV to finish his college degree in film. Cunningham has also been active in the Gospel music business since his retirement from the NFL by opening a recording studio and producing a Christian rap group called Humility. Their album Our Purpose has yet to be released in 2008 under Cunningham's label. Cunningham, a born again Christian, became an ordained Protestantminister and founded a church called Remnant Ministries in Las Vegas in 2004. He also coached youth football in the city for his son.
In December 2009 Cunningham was hired by Silverado High School as the offensive coordinator of the school's varsity and junior varsity football team. His son, Randall Cunningham II, was a freshman quarterback for the Skyhawks.
On June 29, 2010, one of Cunningham's children, two-year-old son Christian, drowned in a hot tub while unattended at the family home in Las Vegas.
In August 2011, following a rumored spat with Silverado's head coach, Cunningham resigned his coaching position at SHS. His son, Randall Jr, withdrew from SHS and registered the same day at Bishop Gorman High School, a private Roman Catholic school in Las Vegas.
In July of 2012, Cunningham was named the twenty-third greatest quarterback of the NFL's post-merger era, according to Football Nation.