Odpowiednio zbudowany HTML, cachowanie treści, szybki serwer na szybkim łączu, dobrze napisany kod php. ... to jest to czego potrzebujesz

Jest też inna metoda - trochę bardziej skomplikowana, ale efekt daje za....bisty.
Oparte jest to na JavaScripcie i polega na tym że każdy link prowadzi np. do ukrytego IFRAME... w tym iframe otwiera się strona (poprzednia jest cały czas widoczna w przeglądarce). Po załadowaniu całej nowej strony (z obrazkami, css-ami) jest ona przy pomocy właśnie JavaScriptu przenoszona do głównego frame-a (parenta), chyba że ktoś zrobił SHIFT+Click ... wtedy nic się nie dzieje - otworzyło się nowe okno.
Widziałem komercyjny produkt - akcelerator HTML-a - który miał taki ficzer.. był o tyle lepszy że analizował dowolne strony w LOCIE i tak je modyfikował, że działały w wyżej opisany sposób - efekt nazywał się "non-white-page" czy jakoś tak, generalnie efekt dla końcowego usera był wyśmienity.