Per lavorare in locale hai bisogno di un web server apache, di PHP e di un DB MySql.
Puoi installare tutto separatamente oppure installare una WAMP (=Web+Apache+Mysql+Php) che in pratica è un pacchetto preconfigurato. La versione di PHP può incidere sul funzionamento di Joomla ma se devo essere sincero, la mappa di compatibilità non la ricordo.
Magari Vaentus lo sa e ti sa rispondere con più precisione.
Si, per installazione "fresca" intendevo esattamente quello che hai scritto. Decomprimi il pacchetto di Joomla in una cartella del server (o nella root del tuo webserver locale), installi le estensioni ed i template dai pacchetti originali e ricarichi i dati da DB.
Credo che il solo trasferimento di DB si possa fare anche con Akeeba, ma non lo conosco e sinceramente preferisco fare le cose manualmente.
Di solito il provider ti mette a disposizione phpmyadmin che ti permette di lavorare sulle tabelle con facilità dall'interfaccia web esportando il DB su file di testo per poi caricarlo in locale o sul nuovo sito in un secondo momento.
Solitamente nelle wamp è compreso anche phpmyadmin per cui l'interfaccia con cui lavori sul DB remoto e quello locale è esteticamente la stessa.
L'unico accorgimento è che quando sposti un sito da locale a remoto o viceversa usando FTP devi ricordarti di aggiornare la configurazione in modo che si colleghi al DB giusto con l'utente corretto e la giusta password, altrimenti non va nulla.
Per quanto riguarda i providers, se fai una ricerca nel forum trovi anche un articolo recente (3-4 giorni) dove si cerca di elencare i providers gratuiti che offrono caratteristiche adatte ad un sito in Joomla.
Potrebbe essere una alternativa ad installare tutto in locale, se hai delle difficoltà tecniche.