As stated, there are no roads to Iquitos. You have to fly or take the boat!
Unless you are an experienced traveler with a love of adventure, taking the boat is not advisable. It usually takes about four or five days from either Yurimaguas or Pucallpa. The food provided on the boats is often pretty bad and not something to recommend straight before an ayahuasca retreat. Therefore, we strongly recommend that you fly to Iquitos. The direct flight takes about 100 minutes from Lima. There are currently five domestic airlines running daily flights between Lima and Iquitos. These are LATAM, Star Peru, Peruvian Airlines, VivaPeru and Avianca.
You can usually book your flights all the way to Iquitos using a travel agent or flight-booking website such as Expedia. However, please be aware that almost all travel agents and flight booking websites use LATAM and Avianca as the airlines for the Lima to Iquitos leg of the journey and they both have the highest prices for tourists.
If you are on a tight budget and want to save money, then explore the option of only booking your international flight to Lima with your travel agent and then booking your flight from Lima to Iquitos separately with Peruvian Airlines or Star Peru. Usually, the best deals are with Peruvian Airlines, where you can sometimes book a round-trip from Lima for less than $100 (average price is about $150 when booked inside Peru).
NOTE: Please be aware that some airlines do not make clear whether there is a stopover in Pucallpa or in Tarapoto. You may get the impression you’re booking a direct flight to Iquitos, and then accidentally get off the plane too soon. A direct flight takes about 100 minutes, while a flight with a stopover can take up to 250 minutes.