Technically speaking, I don't feel there is the difference between them.
Both are the same as for me, but I think "~하기위해" is more often used.
In conversations, we prefer to use "~하려고" instead of them.
Here is thing how I feel about "~하기위해서"
1) "~하기위해서" is kinda emphasis of "~하기위해" so you can put a stress on "서" as in "위해서".
2) When I read a sentence with "~하기위해서", I take a breath after this phrasal.
For example,
나는 대학을 가기위해서(pause - take one breath)열심히 공부했다.
3) Sometimes we can make a sentence putting "는" as in "하기위해서", but not for "하기위해".
For example,
To speak Korean well, it's a good idea to watch Korean dramas on TV.
(한국어을 잘 말 + 하기위해서 + 는, 한국 드라마를 보는것이 좋다)
4) "~하기위해서" sounds more appropriate in written rather than "하기위해"
It's just my two cents.:)