There are actually 2 different kinds of copy & paste - there's the one provided by the underlying X11 graphics system, and there's the one provided by your window manager (Gnome, KDE, etc).
Highlighting text without clicking is enough to get it copied to the X11 buffer-space, and middle-clicking will paste out of that. If you use control-X or control-C, it will use the window-manager's buffer space as well (since you had to have highlighted it to use those keys), but only a control-V will get the text out of there - middle clicking won't.
To make things more confusing, window manager copy & paste will work with non-text items too, so even if your highlighting had gotten some text into both buffers, you might then have some files or complex data in the window-manager buffer instead and the two will be out of sync.
Some applications are smart enough to understand and use both, others aren't. Terminal windows are usually of the stupid variety when it comes to copy & paste. There are usually settings for each application to tell them how to fix the copy & paste mess, but getting them all set up correctly is a lot of work. Ubuntu gets most of them by default, I think.
The situation was historically much worse, and led to freedesktop defining standards around it: