I would suggest you try something way simpler at first:
Programming it on a screen of any sort will require you to learn how to “render” your graphics. As a starting point I would start with 3x3 RGB LEDs, each with 2 buttons (One for X one for O) (Or just one button per LED which will swap the colors from WHITE>RED>GREEN, or whichever color you designate for your Xs and Os). That way you can have a “multiplayer” game set up for you where only thing you have to do is check if there is 3 LEDs with the same color in a line or diagonal.
If you go with a one button approach you might have to determine a turn so that it wouldn’t automatically game over when someone tries to change the colors. But that’s something for you to work out, I guess.
Given that you’re just beginning with the programming I think this will help you understand the Arduino environment and help you familiarize yourself with the code. It shouldn’t be too complicated of a task to do, and one Arduino UNO should be able to support your project.
Once you have this done you can look into LCDs (Most common would be 128x64, I guess) and how to draw stuff on them and try and replace your rudimentary 3x3 with a better one. When that’s done, maybe you can look into adding “AI” to play against, but that’s a whole different task, especially with limited memory that Arduino has.
Like mentioned in some of the previous replies, it might be an issue developing an optimized solution, or a “smart” one.
But good luck with the project, if you get stuck on something specific you can always feel free to make another post if you need help with code or circuit.