What's different between Ctrl+Z and Ctrl+C in Unix command line Found this explanation on this forum post (thanks to @Wuffers for the post). Control+Z is used for suspending a process by sending it the signal SIGTSTP , which cannot be intercepted by the program. While Control+C is used to kill a process with the signal SIGINT , and can be intercepted by a program so it can clean its self up before exiting, or not exit at all. If you suspend a process, this will show up in the shell to tell you it has been suspended: [1]+ Stopped yes However, if you kill one, you won't see any confirmation other than being dropped back to a shell prompt. When you suspend a process, you can do fancy things with it, too. For instance, running this: fg With a program suspended will bring it back to the foreground. And running the command bg With a program suspended will allow it to run in the background (the program's output will still go to the TTY , though). If you want to kill a suspended program, you don't have to bring it back with fg first, you can simply do the command: kill %1 If you have multiple suspended commands, running jobs will list them, like this: [1]- Stopped pianobar [2]+ Stopped yes Using %# , where # is the job number (the one in square brackets from the jobs output) with bg , fg , or kill , can be used to do the action on that job.