
Zikula uses a modular design that allows you to add to the functionality by installing "modules".
Just like you would install an application on your home computer like a work processor, FTP client, music player, or game to add to the functionality and allow you to perform a task, modules perform a task within the Zikula framework.
Some modules that you could install (if they're not already installed) would be page creators, forums, image management, etc.

While sometimes confused with modules, blocks don't typically add functionality but rather extend existing functionality.
Just like you would install a desktop widget to display the weather, cpu temperature, or number of waiting e-mails, you could install a block to display the number of people online, latest forum posts, navigation menu, etc.
In Zikula, all blocks must belong to at least one module. By default, blocks are shown in all modules, but you can edit a block's configuration so that it is only displayed in the module(s) that you specify. As an example, you may want a block that displays Stock prices to appear on your News page, but not in the message forums.
One of the biggest leaps forward in web ideology since the initial web browser is the separation of content and style.
In a nutshell, this means that with Zikula, you can at any time change the entire look of your web site by changing the theme. Changing the web site theme in no way alters the content of your web site.
A general real world application of this would allow you to have a different theme for your web site for each month, holiday, season, or day of the week.
As your site begins to age you may wish to "freshen" it up with a new theme.
If you have several themes installed, you can also give your visitors the ability to change the theme of your web site on an individual basis.