There have been many posts asking this very question and I don’t feel there is any one right answer. Each traveler is different, with different needs and itineraries, this combined with the fact that flight prices can change daily, means that what is right for me, may not be right for you. Not only that, but considering the constant change in ticket pricing, what is right for me today, may not be right for me in a few months.
Because of this I thought I would put together a list of some of the current facts or constants, things that seldom if ever change, to help travelers in choosing the correct airline for their individual situation.
Star Peru and Peruvian Airlines are generally the cheapest option for non-residents; they only operate within Peru and offer the same price for both residents and non-residents. Being smaller companies they don't offer as many flights a day as LAN or Avianca and may not cover all the routes you may want.
LAN and Avianca are larger companies that generally operate more flights per day; they cover all of the routes. Considering they operate outside of Peru and that they also partner with other airlines, gives you the ability to add your domestic flight to an international flight, or even use miles for the flight. LAN and Avianca also have separate pricing for residents and non-residents, so you must be careful which ticket class you purchase.
One additional Item I have heard about LAN, is that their planes are better equipped to fly in bad weather, and may be operating when the other 3 airlines cannot. As I said, this is only something that I have heard so I will not claim it as a fact; I did hear this from a reliable source though. While this could be an important factor on occasion, like times of heavy rain or storm activity, the majority of delays in and out of the Cusco airport are due to low clouds, so this point would generally make no difference as the Cusco airport is designated as a VFR airport.
So to provide yourself additional options, I would recommend putting any planed time in Lima at the end of your trip, this will provide you with the flexibility to purchase your flights separately, if you find that is what you want to do.