when does a transaction go through? When exactly does the receiving party receives their payment.
When the transaction is validated or when the transaction is added to a block?
When exactly does the receiving party receives their payment. 


This is considered to have happened as soon as the transaction is included in a newly mined block and that block starts to propagate through the Bitcoin network. 

The recipient may not find out that they have received the money until their particular node (e.g. wallet) receives a copy of that block to add to its copy of the blockchain. If the recipient's node is turned off and cannot receive blocks, that does not mean they have not received the money. They have as far as everyone else is concerned.

The recipient may not consider that receipt safe until their node (or one they trust, like a blockchain explorer) sees that six confirmations have been received - that is 6 new blocks mined on top of the block that contains the transaction.

Remember that Bitcoins are not really things that move around, they are not really sent places and do not really arrive anywhere. All that happens is that everybody builds identical copies of the journal of transactions - a list of transactions called the blockchain. By inspecting that list of transactions everyone can see that a specific Bitcoin-address or script now has control over a specific amount of money that they didn't have control over before. Nothing else matters.

Since data takes time to bubble and percolate from node to node to node to node through the network, different nodes will have slightly different dates or times on which they became aware of a specific transaction. No one of these is any more correct than any other.

Blocks that fail validation might as well be considered to have never existed. The network does not keep or propagate unvalidated transactions. By design, no-one trusts anyone else, therefore every node does its own validations. Even though it knows the sending node will have already validated the block.