"He has gone to play."
"He has gone for playing cricket."
The first sentence is correct. Please explain if the 2nd one is right? If so, then why? If not, then why not?
This isn't a question of grammar, but of lexicon: which words and phrases happen to be used and which don't. There is no "why", no rule: you just have to learn that "go to [verb]" is an expression in English and "go for [verb]ing" isn't (or isn't with that meaning).
The second sentence is "incorrect", but would be easily understood by a native speaker. It should be:
He has gone to play cricket