David James made 572 Premier League appearances, the most in history. He played for Liverpool, Aston Villa, West Ham, Manchester City, and Portsmouth in a long career spanning from 1994 to 2010. While Ryan Giggs and Paul Scholes played more total top-flight games (including pre-PL era), James specifically has the most Premier League appearances.