I think it all differs on how familiar you are with what you're doing. If you can quickly navigate the toolboxes or search for your specific GUI tool quicker than you can write out code in the interactive window, then that is the route to take. If the inverse is true, then stick to coding in the interactive window.
I always suggest to co-workers to use the interactive window when time isn't pressing. This is a good way to get more comfortable and familiar with both the python syntax and the arcpy modules. However, it isn't quicker initially as everyone was trained to search for the tool or navigate the toolboxes.
I always have the interactive window showing and find it very quick to just drop a little code in there. My toolboxes and search panels are closed so going that route takes more time. Just one off tools is a matter of preference really.
As @PolyGeo said, it is best when chaining things together. I use a loop trick to chain together tools and process it all at once.
layers = ["layer1"]
for layer in layers:
arcpy.AddField_management(layer, "TEXT", "SomeField")
arcpy.CalculateField_management(layer, "SomeField", "!Field2!", "PYTHON_9.3")
Those are simplistic examples, but I find it easier than individually opening each tool and running it. Plus, you get the added benefits of python when doing it in code. Whether it is string manipulation or pulling in other modules (e.g. Math module or SciPy, etc), you get more options.
But for simple tasks, stick with what's faster for you unless you are wanting to learn or do more complex tasks.