Gregory ilk profesyonel karşılaşmasına 1972 yılında, 18 yaşında iken, Northampton Town formasıyla çıkmıştır. Bundan sonraki beş yılda oynadığı 187 karşılaşmada sekiz gol atmış ve 1977 yılında buradan Aston Villa'ya transfer olmuştur.
Gregory'nin Aston Villa takımında başarılı olduğu söylenebilir. Artık daha öncekinin iki klasman üzerinde mücadele etmesine rağmen bu düzeydeki futbola iyi uyum sağlamış, geçirdiği iki sezonda 65 karşılaşmada oynayıp 10 gol kaydetmiştir. Gregory Aston Villa'da bulunduğu dönemde 2 den 11'e kadar olan tüm forma numaralarını giyerek, sahanın her bölgesinde oynayabilen tek futbolcu haline gelmiştir ve bu hâlen bir rekor durumundadır.
Gregory 1979 yılında o sezon tarihinde ilk kez 1. Lig'e yükselen Brighton & Hove Albion takımıyla sözleşme imzalamıştır. Buradan 2. Lig ekiplerinden QPR'ye transfer olmadan önce geçirdiği iki sezonda çıktığı 72 müsabakada yedi gol atmıştır.
1982 yılında Tottenham Hotspur'la FA Cup finalinde karşılaşıp ikinci karşılaşmada kaybeden ve bir sezon sonra 2. Lig'de şampiyon olarak 1. Lig'e yükselen QPR takımının kadrosunda yer almıştır. Ayrıca 1984 yılında ligi beşinci sırada bitirerek UEFA Kupası'na katılma hakkı kazanılmasında rol oynamış, ancak ardından gelen 1984-85 sezonu antrenör Terry Venables'in Barcelona'ya gitmesi ve yerine gelen Frank Sibley'in aynı performansı sergileyememesinden dolayı zor bir dönem olmuştur. QPR'nin kıl payı ligde kaldığı bu sezondan sonra, Gregory iki klasman aşağıda mücadele eden bir zamanların büyük takımlarından Derby County'ye transfer olmuştur.
1972 ve 1975 yıllarında İngiltere şampiyonluğu yaşamış olan Derby County 1984 yılında 3. Lig'e kadar gerilemiş ve 1984-85 sezonunda tekrar 2. Lig'e yükselememiştir. Gregory 2. Lig'e yükselmeyi başardıkları 1985-86 sezonunda orta sahanın önemli bir parçası olmuş ve takımı bir yıl sonra 2. Lig şampiyonu olarak 1. Lig'e çıkmıştır. Gregory futbolculuk kariyerini noktalamadan önce bir sezon daha burada oynamış, bu yıl takımın yaklaşık on yıllık sürede geçirdiği en iyi dönem olmuştur. "Koçlar" lakaplı takımıyla toplam 93 lig karşılaşmasına çıkmış ve 22 gole imza atmıştır.[1]
Teknik direktörlük kariyeri
John Gregory antrenörlükte ilk tecrübelerini, önce Portsmouth'u ardından Plymouth Argyle'i birkaç ay boyunca çalışdığı 1989 Ocak ayı ile 1990 Haziran ayı arası dönemde yaşadı. Kısa bir süre sonra, geçmişte İngiltere forması altında birlikte oynadığı Phil Neal'ın o dönemde çalıştırdığı Bolton Wanderers'ta sözleşmesiz olarak oynamaya başladı.
1996 yılında Wycombe Wanderers ile anlaşarak tekrar antrenörlüğe başlayana kadar, Leicester City (1991-1994) ve Aston Villa (1994-1996) takımlarının teknik kadrosunda Brian Little ile birlikte görev yaptı. Gregory göreve geldiğinde 2. Lig'in son sırasında yer alan Wycombe, onunla birlikte sezonu orta sıralarda bitirmelerini sağlayan bir ilerleme göstermiştir. Bununla birlikte takım bu noktadan öteye geçememiş, hatta FA Cup'ta alt küme takımlarından Basingstoke Town'a elenerek hayal kırıklığı yaratmıştır. 1998 Şubat ayında takımı iyi performans gösterirken Aston Villa ile anlaşarak görevi bırakan Gregory, 1997-98 sezonun kalan bölümünde Villa'yı geliştirmiş ve takım UEFA Kupası'na katılma hakkı elde etmiştir.