My suggestion is to book the flight of your choice and then join the frequent flyer program of that airline. There are so many ways to earn miles without flying that it is silly not to join at least one, if not more than one, program. As stated above, you can easily collect enough miles through credit card programs to earn free trips.