Question: what is the fundamental difference between shell scripts and c programs?
Answer: they are very different. Shell scripts can not be used for very complicated programs, while C can be used for anything. Shell scripts are quicker to write and would be used for eg writing a program to back up all new files every hour. C is the language used for the Linux kernel and a lot else.