Well there is something called a DAWG (Directed Acyclic Word Graph) which I have not tried personally but may be worth a look since it appears to give a compact dictionary representation that allows fast searches.
http://wiki.forthfreak.net/index.cgi?DirectedAcyclicWordGraph
http://www-2.cs.cmu.edu/afs/cs/academic/class/15451-f00/www/lectures/lect0926
Plenty of other stuff about the technique on google and its implementation in scrabble is described here
http://counties.csc.calpoly.edu/~team12fk/F02/acm_worlds_fastest_scrabble_program.pdf
http://wiki.forthfreak.net/index.cgi?DirectedAcyclicWordGraph
http://www-2.cs.cmu.edu/afs/cs/academic/class/15451-f00/www/lectures/lect0926
Plenty of other stuff about the technique on google and its implementation in scrabble is described here
http://counties.csc.calpoly.edu/~team12fk/F02/acm_worlds_fastest_scrabble_program.pdf