Если вы хотите блеск, вы можете попробовать WPF, перф. не так уж и плохо, и очень легко получить очень настраиваемую графику, загрузку из внешних файлов и т.д ....
С точки зрения обобщения поведения, вы, вероятно, хотите отделить код графа сцены (макет, объекты рисования и все скучные низкоуровневые вещи), а затем поместить слой для общего взаимодействия с настольной игрой: выбрать источник, затем назначение для ходов, повороты и тому подобное, а затем наложите свою игровую логику поверх этого.
Я бы, наверное, сначала запустил Tic-Tac-Toe, посмотрел, есть ли где-нибудь, что тебе нужно, чтобы разорвать разделение слоев и исправить это рано, прежде чем увязнуть в игровой логике.