La passione per il teatro si manifestò in Ian McDiarmid già all'età di cinque anni, quando il padre lo portò a vedere una rappresentazione in un teatro di Dundee. Crescendo, McDiarmid coltivò sempre di più questo sogno, ma i genitori si dimostrarono ben presto contrari a queste aspirazioni: così frequentò l'università, laureandosi in psicologia. Qualche tempo dopo, McDiarmid decise di realizzare il suo sogno, cimentandosi così nel teatro, e arrivò a frequentare alcuni corsi di recitazione presso una scuola teatrale di Glasgow: si dimostrò dotato, visto che nel 1968 McDiarmid ricevette il primo di una lunga serie di riconoscimenti per le sue interpretazioni. Nei primi anni settanta cominciò a dedicarsi assiduamente al teatro, comparendo in molte e celebrate realizzazioni. Da allora, fino ai giorni nostri, ha preso parte a decine di spettacoli.
Dopo una piccola parte nel film Il drago del lago di fuoco (1981), McDiarmid fu scelto da George Lucas per interpretare l'Imperatore Palpatine nel film Il ritorno dello Jedi (1983): interpretava il principale antagonista della vicenda. Sedici anni dopo tornò ad interpretare lo stesso personaggio, questa volta più giovane, in Star Wars: Episodio I - La minaccia fantasma (1999), e negli anni successivi prese parte agli altri due prequel della saga. McDiarmid è l'unico attore ad interpretare un personaggio umano che ha preso parte a tutte le tre trilogie, un'opportunità datagli dal fatto che era abbastanza giovane (nemmeno quarant'anni) quando apparve ne Il ritorno dello jedi.
La sua interpretazione nei prequel procede su due binari paralleli: da una parte interpreta il malvagio Darth Sidious, in un ruolo simile a quello che aveva già avuto nel 1983; dall'altra dà vita al Senatore (Cancelliere negli Episodi II e III) Palpatine, ovvero la facciata pubblica del vero antagonista principale della saga. Proprio per questo estremo dualismo, la sua interpretazione è stata accolta con molte lodi da parte dei fan.
Nella versione DVD de L'Impero colpisce ancora, uscita nel 2004, un breve dialogo tra Dart Fener e un ologramma dell'Imperatore Palpatine fu modificato, sovrapponendo il volto di McDiarmid (e la sua voce) a quello presente nella versione del 1980: nella scena originale l'imperatore era interpretato da una donna, Marjorie Eaton, il cui volto era ricoperto da numerosi strati di trucco.
McDiarmid è apparso inoltre anche nell'ultimo capitolo della trilogia sequel di Guerre stellari, Star Wars: L'ascesa di Skywalker, in cui riprende il ruolo del redivivo Imperatore, diventando così l'unico attore, insieme a Anthony Daniels, Kenny Baker e Peter Mayhew, a comparire in tutte e tre le trilogie. Tra il 2017 e il 2018 ha fatto parte del cast della serie televisiva Britannia.
Nelle versioni in italiano dei suoi film, Ian McDiarmid è stato doppiato da:
Carlo Reali in Star Wars: Episodio I - La minaccia fantasma (Palpatine), Star Wars: Episodio II - L'attacco dei cloni, L'Impero colpisce ancora (nuova edizione)
Francesco Vairano in Star Wars: Episodio III - La vendetta dei Sith, Star Wars: L'ascesa di Skywalker
Dante Biagioni in Due figli di..., Restoration - Il peccato e il castigo