> Just as I said it is a lot more dificult to write code in assembler,
> but, if done properly, you can build more reliable programs.

What do you mean with reliable? More robust? In that case I disagree with you. In my opinion in a high level language one can create more reliable programs than in low level programs, since when programming in a low level language like assembler one makes mistakes more easily and they are often harder to detect. In higher level languages a programmer can make easier use of concepts for programming. For example making use of functions, arrays and other concepts is easier in C than in assembler. In C you don't have to worry about stack pointers, base pointers and many other things when programming. So when programmin in C the programmer can concentrate better on the programming itself.