How to decode a solana transaction?

This is how instructions are encoded. As for instruction data, the question is if the serialized data is self-describing or not. If it isn't you will have to view the code of the program you are sending the instruction to, since: Programs are free to specify how information is encoded into the instruction data byte array.