Time flies, it seems. The first PC virus was found exactly two decades ago. F-Secure's press release has a rundown on how viruses have changed over the years. It is probably not a surprise that viruses have also gotten more complex in the process.
The following is a structural comparison of Boot/Brain.A (1986) and W32/Bagle.AG@mm (2004):
Can anyone spot the five small differences between these two pictures?
Brain.A fits into a few sectors and consists of around a dozen functions. Bagle.AG weighs over 100 KiB unpacked and it is built from more than a hundred functions. For people interested in history, we still have a description of Brain.A.