The best site to actually buy tickets on are the airlines' own websites. The only reason that I could think of to use a 3rd party site would be if you are flying a very uncommon route that requires you to fly multiple airlines from different alliances. When you buy from a 3rd party site, you run the risk of having to deal with a middleman if something goes wrong with your trip and/or you need to make changes.
That being said, I use those sites to comparison shop (keeping in mind that airlines like Southwest don't show up on them), then buy off the airline's site.
As for why the prices are different, each airline offers different fare options with different conditions. Sometimes their cheapest option might not be available. Also, Spirit might show up as the cheapest flight, but they will tack a fee on for everything. In order to compare prices, you need to take into account everything that you might have to pay for, such as checked luggage, carry-on luggage, and picking your seat ahead of time.