I use Expedia and Opodo a fair bit, especially for multi-sector itineraries where their booking tools are often better than those of the airlines.
The main disadvantage of booking through a third-party site is that this makes you a customer of the third party rather than the airline, and that the airline will refer you back to the agent if things go wrong. There have been occasions when I have booked direct even though it was slightly more expensive because I prefer dealing with the airline.
Another thing is that there are itineraries for which I have to use someone like Expedia because I can't book direct on the airline's own site. For example, NW won't let you use their site unless you are a US resident with a US credit card (they refer you to KLM if you're in Europe), KLM won't let you book itineraries that are entirely within the US, so that leaves the likes of Expedia to book internal flights in the US.