Puerto Ayacucho Ferries go across the river to Colombia, and downriver to San Fernando de Apure. There is no ferry service further up river because of the cataracts. However, just past the cataracts, river launches to provide additional transport further upriver. Freighters also arrive and depart from the docks at Puerto Ayacucho, and I suppose with some bargaining, one can hitch a ride. However, the time will be considerably longer than by the highway. Nearby, the Aduana, or Customs House, provides service for those coming from Colombia. This border is rather tense as it is a major thoroughfare for illicit drug trafficking. Colombian guerillas control much of the land on the other side of the river.
Avensa and other Venezuelan airlines have regular flights to Puerto Ayacucho, and this may be the major way that tourist arrive. The other way from Caracas, other than by private car, would be by bus, and that takes probably 20 hours. This airport also services the more remote landing strips of the Upper Orinoco and its tributaries, where flying over the rainforest is the only practical way to get anywhere. The airport is on one edge of town and is relatively easy to find.
See the Caicara page for more details, but the highway to Puerto Ayacucho is relatively new and easy to drive. There are a number of natural rock formations and waterfalls to see along the way. The travel time is about six hours, with virtually no place to stop in between. We did stop for a warm soda along the way though.