The surviving victim said he had been abducted, thrown in a van and robbed by four or five people before being thrown in the river, but managed to get free, police said.
The 20-year-old man, who was not immediately identified, suffered an estimated nine stab wounds to the neck, chest, body and legs, but was reported in stable condition after being hospitalized, police said. Dressed only in underwear and a shirt, his arms had been tied around his back, his ankles had been tied together and he had been blindfolded.
"At this point, the only motive we have for the abduction and stabbing of our 20-year-old victim who's alive is robbery," Chief Inspector Scott Small said.
The two dead men were found with their wrists and ankles duct taped, and also with duct tape around their face, police said.
The bodies were found five feet from a retaining wall along the Schuylkill River, in five to 10 feet of water.
Police said a bucket was apparently used as one makeshift anchor. Next to one of the bodies brought ashore was a roofing cement bucket.
The survivor said at some point during the van ride he realized two other people were also in the back of the van with him, police said.
Police would not disclose the location where the surviving victim was abducted. They hoped to use surveillance video from that location to identify the van.
Autopsies were scheduled to determine if the two men died in the river or were already dead when they were thrown in the water. Their identities were not immediately known.
The area where the men were dumped is a popular area for recreation. As the bodies were being recovered, boaters and runners passed the scene.