The only player to have represented both India and Pakistan in international cricket is Hanif Mohammad.
Hanif Mohammad, a legendary batsman from Pakistan, was born in India. He played for India in a single Test match against Pakistan in 1952. Later, after the partition of India, he chose to represent Pakistan and became a national icon, playing in 55 Test matches for the country.
This makes him a unique figure in the history of cricket, having played for both nations.