1. This is quite a clean and straightforward way to do it. Fastest to setup.
Dowsides: hard to stop or restart the process. Recommended way for small custom things that should be run on the startup, but doesn't leave a process running.
2. The recommended way. (Atleast, I would recommend that
Especially suitable for daemons. This way you can control the starting order, runlevels when daemon is being run and the kill/stop order of the process. There is also easy and consistent way to start and stop daemons by hand when needed and you can easily extend the startup script to do other things too (rehash, awaken,dumplog, etc. whatever applies to your daemon).
3. Good for hardwired system processes (eg. the program listening for keyboard input in your virtual terminal) you newer want to stop. I would leave this file alone.
About the problem:
The sentence "Neverthless I am unable to make the last one work." is semantically almost void. Anyways, what you probably mean to say, that the program doesn't start even if you put that line there.
-Did you remember to run "telinit q" after you modified /etc/inittab?
-If so, did you check the messages in dmesg and/or inittab that could explain why it doesnt work?
4. Few more places to drop bootup processes.
a) @reboot -line in /etc/crontab or /etc/cron.d/yourScript or
b) your ~/.crontab
The reasons to use @reboot in /etc/crontab are (IMHO) somewhat strange, but
crontabs for individual users (or even system users) makes sense in many cases (even the @reboot -entry).
See "man crontab" and "man 5 crontab" for details.
btw. what is the command you are trying to run at bootup?