Is there a way to write specific GUI in unity3d?

I faced a problem with GUI in Unity 3d - its the game developing tool, moreover its support c# scripting, so as I wrote there is a big problem with a GUI writing. In this case the GUI is a poor and I decided to make it more flexible for my specific task which is aimed to perform 2 choosing, adding new 2 choosing and saving chosen items in XML file for loading along with starting a scene, actually I wrote the choosing using bunch of guilayout.button. So, now I don’t know how to go further with new choosing and saving the chosen items in XML file and then load this XML to the exact buttons before restarting the scene… I hope the question was asked in correct way. Please, put me in right way to make this task done.

Take a look at PlayerPrefs, it loads/saves data between games.