Nice resource.
List iteration is just one of those things you can never avoid having to do in the real world. Luckily, amigaos linked lists are more than enough for amiga only coding in C.
The rest of the the time in C++ etc, in my experience you end up with containers full of pointers rather than containers full of actual objects. In C++ an ideal solution is to make base classes (or specialise an STL one) that handles void* in an optimal way and inherit it in a type safe template that adds no extra code. Less bloat, more performance, no sacrifice in compatibility (if using the STL interface anyway).