When comparing one specific, isolated, tiny application done in OOP style to one done in procedural style, it will be difficult to find any advantage (assuming both are done well). As applications get larger, OOP starts to overtake procedural by allowing the use of OOD[esign] concepts and the creation of highly modular and loosely coupled code. Together this makes it easier to get it closer to being right the first time, and then also easier to modify as you test and debug it, getting you to the end of the project faster. This also makes it easier to maintain the code as bugs are discovered and new features are requested. It also makes it much, much easier to delegate tasks on a mutli-programmer project, as each programmer can work on his particular set of classes, and all he needs to know about the classes others are working on is their public interface definition.
Lastly, and perhaps the main reason OOD/OOP was "invented", is that it greatly enhances the re-usability of code, as each class provides a clearly defined set of functionalities with an equally clearly defined interface, making it much easier to plug in to other application; as opposed to searching through several thousand lines of procedural code to find the functions you want to copy, then copying-and-pasting them into another procedural program, finding out that they depend on another function you didn't realize was called by the code, then finding out that that function uses a global variable which you don't currently have in the application, etc., etc., and so forth.
Really lastly , I find that writing my code in OOP style makes me think more carefully about what I'm doing and forces me to break things down into "bite-sized" chunks that I can concentrate on one at a time, instead of trying to keep track of where I am in the entire program flow and jumping around in an unorganized manner.
But OOP is by no means a programming "silver bullet", and there are more than a few very excellent programmers out there that don't like it and prefer not to use it; and using it by no means guarantees inferior programmers will suddenly become superior ones. All that being said, if you have thoughts of ever working on large projects with many programmers, you'd best learn the theory and practice of OOD/OOP, as it's here to stay for at least a while.