I sent a transaction from an exchange to an ICO and my transaction failed. Is there any way to retrieve my Eth from the ICO smart contract address? I guess somehow my transaction failed. please help if you can.
According to the Etherscan results of the transaction hash you posted, the transaction did indeed fail.
This means that all of the ether that you sent from the address 0x2d5bda26c47acdc5ca1388a9a6fd749b3a7ee984 are back at that address.
You initially said that this was from an exchange, but I doubt it. You probably control this address somehow or somewhere. Most exchanges use a hot wallet that has a huge number of transactions per day and a large amount of Ether stored. This wallet has only a couple transactions, a fund for approximately 0.64 ether, and then a subsequently failed transaction.
Assuming that you have the wallet for this address, the only money you lost was the transaction fee. The rest of the money is still on the wallet.
If it was indeed an exchange held address (just an oddly small one), then contacting the exchange should get your funds returned to you. This is because they can see the history on your account with withdrawal requests, and the address they used to fund the transaction. You should be able to get it back, as long as either you hold the wallet or the exchange is ethical and has logs.