If you want real flexibility and be able to manipulate data on your PC and build real good programs you should go straight to study Processing, Visual Basic or any other language with Serial Communication capability. You will be in control writing the code for what you need not using already written code that might not fit your application the way you want. When I began with this I wasted a lot of time until I found that Processing was the tool I needed (other people prefer VB, etc) to do almost anything I wanted with Arduino and a PC. Not very easy for a beginner though; but after you learn it you will appreciate this advise.
You will be able to write really complex programs in your PC which will do almost anything you can think of and through Arduino you will be able to interact with the outside world from the PC. In my project I just send orders to Arduino from the PC when I need something to be done and receive data back from it; but it controls the outside process on its own. There are applications that Arduino can handle by itself; but I like the idea of having a full computer with screen, keyboard, hard drive, etc as the main control unit from where I interact with the system. It makes any design extremely flexible and powerful.