Williams first played for Newport in 1901 and was part of the team that faced the touring 1908 Australians. Whilst with Newport he had several trials with Wales and was at one stage selected as a reserve for the team, but was never officially selected to represent his birth country. In 1910 Williams was one of five Newport players chosen to represent the British Isles on their tour of South Africa. Williams played in all three test matches.
When the English rugby union invoked Newport's rugby union membership Williams switched his international allegiance to England. Williams was first capped for England on 21 January 1911 when he played against Wales at St Helens. England lost the match 11–15, but in the second game of the Championship Williams finished on the winning side when the English team crushed France 37–0. Williams played in the next two games for England when they lost in tight game to Ireland and beat Scotland to leave them with the Wooden Spoon.