El tema de subir el archivo en sí "pesado" va a depender de la configuración de tu servidor. Si lo haces sólo con PHP .. la de este (php.ini)
El tema de las "barras" de progreso. En principio sólo PHP no puede controlar ese tema, para "ayudar" en este proceso (incluso para no tener los límites que PHP impone al Upload del archivo) se usa mucho Perl.
Un ejemplo que usa PHP+Perl:
http://www.raditha.com/megaupload/
Un ejemplo PHP+Perl+Ajax
http://obokaman.obolog.com/mensaje/1596
Más opciones:
http://www.devpro.it/upload_progress/ http://www.air4web.com/files/upload/
Un saludo,