(See this forum post for another explanation.)
Opera doesn't support folders, so it's best not to call anything in Opera a folder or it'll just be confusing what you're talking about. Opera has views that return search results made on the database.
Opera also doesn't have an inbox. It's best not to call anything just "inbox" or you'll again just be confusing. Instead, refer to views by their names. For example, there's the "All Messages/Unread" view, the "All Messages/Received" view, the "'Inbox' IMAP folder view under the firstname.lastname@example.org IMAP folder access point" and the "'Inbox' view under the email@example.com POP account access point", for example.
So, from that you can see that "All Messages", "Labels", "Attachments", "Mailing Lists", firstname.lastname@example.org etc. are all called "Access Points", which have views under them.
Now, except for the email@example.com access points, all the views under the other access points like the "All Messages" views, return all messages from all accounts, but are further filtered. For example, "All Messages/Unread" returns all messages from all accounts but filters that down to only unread messages. "All Messages/Trash" returns all messages from all accounts but filters that down to messages that are marked as deleted. "All Messages/Received' shows all messages from all accounts. The 'Mailing List" views show all messages from all accounts, but filters that down to just showing messages that came from a mailing list (Opera detects the mailing list headers in the messages).
However, if you click the view button on the mail toolbar above a message list for a view and goto "show", you can further control the filtering of a view. For example, if you have a label set to "hide these messages from other views", if you don't want those messages to show in a view, make sure "view -> show -> show hidden" is unchecked for that view. There's also "view -> Period" to only show more recent messages. So, if you have a label set to "hide these messages from other views" and have "show hidden" unchecked for other views, the label will act a lot like a folder.
Also, remember when I said all the views besides the firstname.lastname@example.org views shows messages from all accounts? Well, you can change that so they only show messages from one account at a time. Just right-click in the mail panel and set "show messages from" to the account you want. You can even goto "shift + F12 -> buttons -> mail" and add the account selector drop-down to the mail panel toolbar so you can see what account you're on and easily switch accounts.
If you're new to Opera, you should click the view button on the mail panel toolbar and uncheck all the email@example.com access points, as you don't normally need them. You then should use the account selector all the time to switch between accounts. Just note that the account selector defaults to "All accounts" on startup.
Now, with that said, yes, if you're using IMAP, your messages will remain in your IMAP "Inbox" folder when you put messages in labels or mark messages as \Deleted. Opera just uses flags and statuses for everything. Just consider your IMAP "Inbox" folder the store for your IMAP messages.
Now, if you want to move a messages from one IMAP folder to another (because you access your messages with a webmail or another client that's not as good as Opera), click the view button on the mail panel toolbar and enable the firstname.lastname@example.org IMAP folder access point for the account. Then, you move or copy messages from one IMAP folder view to another IMAP folder view and the messages will will moved/copied from one IMAP folder to another on the server. In short, the IMAP folder views sync with the actual folders on the server. Whenever you have to move things, use the IMAP folder views. In fact, if you want, you can click the view button on the mail panel toolbar and hide all other access points except the email@example.com IMAP folder access point. Or, you can just drag the IMAP folder access point to the top of the mail panel. Then, if you want, you can use just the IMAP folders like you would with a webmail or other mail clients. It's up top you.
To copy a messages from the "Inbox" IMAP folder to the "Test" IMAP folder, you can hold down ctrl on the message in the "Inbox" IMAP folder view and drag it to the "Test" IMAP folder view. If you want to move instead, don't hold down ctrl when you drag. You can also use copy/cut and paste in the message lists for those IMAP folder view to move/copy messages. The copy/cut and paste commands are available from the right-click menu and the "Opera button -> page" menu. You can also use ctrl + c / ctrl + x and ctrl + v respectively.
Also, just like in windows explorer, when you copy, you can paste multiple times.
For the firstname.lastname@example.org POP access points, you usually keep those hidden and never use them. Some people like to use them though, but try not to get in the habit of using them as they're redundant when you use the account selector and the "All Messages" access point.
Now, for Labels in Opera, if you want to add a label to a message, there are a few ways to do it. You can drag to the label or use "label as" in the right-click menu or the label drop-down in the message list. You can also use copy and paste.
Also, just like with IMAP folder views, if you want to move from one Opera label view to another, you can drag from one label view to another and if you want to copy a message to another label view, you ctrl + drag.
To remove a message from a label, you can right-click on the message in that label view's message list and choose "remove from view". But, you can also use the label as menus to uncheck the label for that message.
Note that operations in Opera don't just work on one message, they work on selections too. You select multiple messages in a list just like you would in most programs. You use ctrl + a to select all (or right-click -> select all or "Opera button -> page -> select all"). You can use shift + the arrow keys or shift + click to select a consecutive range. You can use ctrl + click to select multiple messages.
Now, theres more for IMAP. If you goto "Opera button -> Mail and chat accounts -> the IMAP account -> edit -> IMAP", you can set IMAP sent, spam and trash folders.
When you do this, Opera changes before a little bit:
* When you delete a message, it'll now move from the IMAP folder it's in to the IMAP trash folder, instead of just having the \Deleted flag added to it. "All Messages/Trash" will be synced with the IMAP trash folder, so you can still use "All Messages/Trash" and can still use "right-click in mail panel -> empty trash". "Undelete" in "All Messages/Trash" should move the message back to the the "Inbox" IMAP folder.
* When you sent a message, Opera will add a copy of the message to the IMAP sent folder. Then, "All Messaes/Sent" will be synced with that IMAP folder.
One note though. On the outgoing tab in the account's properties, there's an "Add contact from sent messages" option. When this option is enabled, it goes through all messages in your IMAP sent folder and all messages in "All Messages/Sent" before you set an IMAP sent folder and adds the addresses you sent to to the contacts panel (your address book). If you don't want that to happen, uncheck that option first.
* When you mark a message as spam, the message is moved to the IMAP spam folder. Then, "All Messages/Spam" will be synced with the IMAP spam folder. Then, in "All Messages/Spam", if you mark a message as "not spam", the message will be moved back to the IMAP "Inbox" folder.
Also note that Opera's spam filter learns from messages you add to and remove from "All Message/Spam". This is awesome, but it requires lots of training where you have to remove false positives from "All Messages/Spam" for a while till Opera learns. If you don't like that, you can right-click on "All Messages/Spam" and goto "properties'. Then, if you goto "options", you can uncheck "learn from labeled" messages. You may notice that labels have a "learn from labeled messages" option that works the s ame way, but don't use that for labels unless you want to train the labels.
Also, for IMAP accounts, if the IMAP server has its own spam handling, that can interfere with Opera's spam handling. To fix that, go into the account's properties in Opera and disable spam filter for the account. It's on the IMAP tab in the account's properties.
Also note that some IMAP servers use special extensions and special behavior with IMAP folders. Opera detects these extensions and changes its behavior to work with them. Fastmail is one example. And, Gmail IMAP is a very crash example. See http://operawiki.info/GmailIMAP for that.
Also note that with IMAP and Opera labels, if you go into the label's properties and set an IMAP keyword on the IMAP tab, when you add a message to the label, Opera will set the keyword as a flag on the message on the server so that if you access the IMAP server with another IMAP (or another supporting client), that label will automatically be created and the message will be in it. The IMAP server as to support that though.
For example, if you have a label named "Family", you'd set the label's keyword to "Family" (case-sensitive). If you want a label that uses a keyword to have spaces, instead use an underscore. So, you'd have a label named "My_Family" and set its keyword to "My_Family" too.
Also, for labels, you don't need to set rules for them unless you want. You can just add/remove stuff from them.
Finally, since Opera uses a database and views, a message can be shown in a 1000 Opera views, but there'd still only be one physical copy of the message on your computer. This is very efficient. If real folders were used, you'd have a 1000 copies of the same message.