O'donnell grew up in Madison, New Jersey, and played high school football there at Madison High School. Neil Kennedy O’Donnell was born July 3, 1966 in Madison. Neil’s four older brothers played for local coaching legend Ted Monica and won state championships. Stephen O’Donnell was an All-State quarterback who went on to play for Duke. Coach Monica had retired by the time Neil enrolled at Madison High School, but mentored him throughout much of his young football life. Neil was the skinny brother, but that didn’t keep him from trying to compete with his siblings. His father, Jack—who owned a car dealership in nearby Morristown—nicknamed him Super Babe. Neil developed a rifle arm and a take-no-prisoners brand of toughness by the time he reached Madison High, in preparation for his tryout for the squad his freshman year. He was the star of the Dodgers varsity as a sophomore and junior, but the team won just three games in those two seasons. Despite this, he was promoted as the team's captain and, at the end of the season, Neil went out and recruited his friends who had quit the team to rejoin him as a senior. It was during his senior year that he reconnected to his football roots, becoming the team's quarterback. Neil showed up after the summer with more than 25 pounds of new muscle and willed the team to a respectable 4-2-3 season in 1985. Coach Bobby Ross of Maryland liked everything about Neil, even though he lacked the stats and honors of other high school stars.
At the University of Maryland O'Donnell red-shirted the 1986 season and went on to play in 3 seasons (1987–89) taking over the starting QB job in the 1988 & 89 seasons. He played under Head Coach Joe Krivak who was promoted from QB coach after Bobby Ross left the program in 1986. The Krivak era was marked by mediocre results and the O'Donnell years featured an especially tough out of conference schedule. The Terps finished 5-6 in 1988 and 3-7-1 in 1989 notably tying Penn State, only the second time Maryland had avoided losing to the Nittany Lions in the series up to that point. The Terps failed to reach a bowl game during O'Donnell's career there. He was backed up by QB Scott Zolak who pushed O'Donnell for playing time during both of his seasons as a starter. O'Donnell wore #14 for the Terps as he later would for most of his Pro Career. He was awarded the Ray Krouse Award for Maryland team MVP in 1989 and finished his Maryland career with 26 Touchdown passes, 3 rushing Touchdowns, and 5,069 total yards.
O'Donnell was drafted by the Steelers with the 70th overall pick in the 1990 NFL draft. After sitting on the bench for his entire rookie season, he started in eight games during 1991 before becoming the team's full-time QB in 1992. O'Donnell led the Steelers to Super Bowl XXX, but threw two interceptions to Dallas CowboyscornerbackLarry Brown to set up short touchdown drives in the second half.
Following the Super Bowl letdown, O'Donnell became a free agent, and although the Steelers made an offer, he signed with the New York Jets, where he was 0–6 in his first season as starter before suffering a season-ending shoulder injury despite throwing for 292 or more yards in three of these starts. His performance would improve the following season under new coach Bill Parcells the following year, 1997.
In 1998, with the then-1–3 Bengals, O'Donnell threw a 25-yard touchdown pass to Carl Pickens with 20 seconds remaining to score the winning touchdown against 3–1 Pittsburgh. O'Donnell's 90.2 passer rating was sixth among regular starting quarterbacks in the NFL and third in the AFC. However, due to a poor defense, the Bengals would go on to finish 3–13. O'Donnell was released at the end of the season to make room for rookie quarterback Akili Smith.
From 1999 onwards, O'Donnell was Steve McNair's backup with the Titans. He performed well, winning four of his five starts for an injured McNair in 1999, leaving a perennial .500 team at 5-1 upon McNair's return. Later, O'Donnell came off the bench and led Tennessee to a Week 17 47-36 victory in Pittsburgh en route to the AFC Championship and Super Bowl XXXIV, in which he was not an active participant.
O'Donnell retired after the 2002 season, but was talked into coming back for one game in December 2003 when McNair and Billy Volek were injured. He started in the regular-season finale and delivered a fine performance, completing 18 of 27 passes for 232 yards and two touchdowns, leading the Titans to a 33-13 victory over the Tampa Bay Buccaneers.
O'Donnell ended his career with the lowest interception percentage in NFL history, averaging just 2.11 interceptions for every 100 pass attempts, although this statistic is somewhat diminished by the costly ones he threw in the Super Bowl.Aaron Rodgers has since eclipsed the record (1.99 interception percentage through the 2010-11 season). O'Donnell also wore number 14 during most of his career except during his one-year stint with the Bengals, where he wore number 12. The Bengals did not issue number 14 after the retirement of former quarterback and West Coast offense pioneer Ken Anderson in 1986 until Andy Dalton started wearing number 14 for the Bengals in 2011.