1) No, this is not correct. It will also work for:
* Deliveries which are not inside a workflow => then you can filter based on any information on the user profile
* Transactional message => depending on type you can filter on event + profile info
Only if you need to pre-compute data to define the criteria of a dynamic content, you need a workflow.
2) You may check if the mail was caught by a SPAM filter on your side.
3) Hm, both shall be available.
* Imported list via either a Load File + Reconciliation or via Load Audience
* Data in the account table via Query on profile resource