What type of antenna should I get ?
Should I use an usb wifi dongle or a dd-wrt router for 2 laptops ?
It really depends. I've set up and tested a link over 10km using directional antennas, and signal boosters and there were some obstacles in the way. However, there wasn't much else happening in that area at 2.4GHz. At one end we had a cisco AP -> booster -> directional antenna, at the other end we had usb-wifi -> booster -> directional antenna.
I also know of Icelandic farmers who can't get ADSL where they live and so use a 8km line of sight wifi link to get internet access. Although I don't know the exact hardware in use, other than the fact they've got a directional antenna at each end.
So in some circumstances it is definitely doable, however, I know that environmental factors can have a huge impact so what might be fine in one area, won't work in another. As an example a friend used to get internet via wifi from uni - it worked fine in good weather, however when it rained a tree on the line of sight path filled with water and blocked the signal. The only way of knowing for certain is to test it.
This article has some helpful tips. I suggest you read it. However, what you want to do will be difficult, and depends very much on your environmental conditions (like the weather, where the router is, where your computer is, etc)
It will be hard or impossible and if it will function it will function badly (ie, you might get it to work in an experiment, but I wouldn't rely on it for actually connecting to the internet). Moreover, I assume this would be for use outside? The problem is WiFi was not designed for this and often there is interference during bad weather etc.
You should look into using WiMAX instead, a WiFi-like technology designed for outdoors and longer ranges than WiFi.