With "C" you can do as system friendly coding (without using of hardware), and also with using of hardware. Here is no any limitation if compare C with Asm. Any 'strange' or 'low-level' or 'asm-only' thinks, you can easyly impelemt or on plain C code, or with assembler inline parts (like inlines, asm objects and so on) into C code.
For start you need C compiler itself. I think (and i prefered)
"vbcc". Becouse it's very easy for understand, all is here done very logical and elegant , without any mess with headers like with GCC for example. Vbcc generate very good code/binary, and it will be almost the same as assembler binary, if you will do C code good and with inlines while you will call/use C functions. (like memcpy(),memset() and so on).
If you will be do only plain 68k code for classic amigas, you can also use SasC. This a bit old, but, still very good. For example, compiling of the same code over sasc will be faster, if compared it with vbcc. But output binary will be more good by vbcc. Also sasc can do only 68k binarys, vbcc can : aos3,aos4,morphos (with very little modification of code).
All what you need, it's:
1. choice C compiler and setup it.
2. download system headers. Last ones for classic os, calles NDK3.9. and you can found it for example here
ndk3.9
3. create little example prog (like hello_world.c), try to compile it and run.
If all is ok, after it you can learn some amiga-spesific stuff and try to do somethink.
ps. founding of amiga C sources it's not a problem. Here is tons of link (on this forum also) for demo/intro sources. Also you can browse aminet in directory "/dev/c". Or just do in google somethink like "c code amiga example". But for first, you need setup all this boring crap, and so on.