McNish 1981-ben, egy gokartversenyen kezdte karrierjét, 1987-ben pedig már autóversenyzett. Egy évre rá megnyerte a Vauxhall Lotus bajnokságot, az év ifjúsági pilótája díjat, a legnagyobb tehetségnek járó BRDC-trófeát, és a Skót Motorsport Szövetség az ő nemzetközi teljesítményét díjazta legjobban.
Ismertségét kihasználva a Formula 3-ba igazolt 1989-ben, ahol újabb trófeákat söpört be. Következő év: újabb előrelépés (F3000), újabb brit díjak. Ekkor tesztelt először Forma-1-es kocsit, mégpedig a McLarenét. Két évig dolgozott még a McLarennek, utána a Benettonhoz ment. Az azonban már rossz jel volt, hogy harmadik éve vezetett F1-es kocsikat, de versenyen még mindig nem indult.
1994-ben McNish részt vett a F3000-ben, a királykategóriában pedig tesztelt a Lolával. Egy évre rá újra a F3000 jutott neki, majd 1996-ban a Benettonnak vezetett - csak edzéseken.
A karrierjével elégedetlen McNish 1997-ben GT-versenyzőnek állt, a Porsche szolgálatába, ahol három évet töltött el. Közben 1998-ban megnyerte a Le Mans-i 24 órás versenyt, GT1 kategóriában a daytonai 24 órást, és megint csak kapott díjakat - többek közt a Jim Clarke-emlékdíjat.
2000-ben ismételt Le Mans-ban, és megnyerte a Petit Le Mans-t is, sőt az amerikai Le Mans-sorozat (ALMS) összetett győztese lett, és őt választotta a Toyota teszpilótának a 2002-es nagy próba előtt. Ekkor aztán belevetette magát a munkába, alig maradt el tapasztalt csapattársa, Mika Salo eredményeitől, és nem törődött a pletykákkal, melyek szerint a Toyota mást választ helyette 2002-re.