What is research, specifically in Computer Science?
[This answer is colored by the fact that I'm a theoretical computer scientist.]

As an undergraduate, you are (usually) given crisp, well-formulated problems with definite correct answers that you can reasonably expected to discover in a relatively short time period, using only a very narrow range of knowledge and skills.  If you get stuck, your instructor can give you useful hints, because they already know how to solve the problem.  Moreover, the instructor can probably explain the complete solution to you fairly quickly (in, say, less than a week).

Research involves vague, half-baked, open-ended problems that may resist progress after months or even years of hard work, regardless of how many classes you've taken or books/papers you've read.  Nobody else knows the answer to the problem you're working on (or it isn't really research); nobody can even give you a hint how to proceed.  Nobody has a clue what other results or techniques will be helpful, or if you're just going to have to make up a completely new technique on the fly.  You don't know if the solution you're aiming for is actually useful or interesting, or even if the problem is formulated so that it has a definite answer.  Still, you'd better find something interesting, or you'll never graduate.

If that sounds like fun, research might be for you!