I understand we have a target language and a source language. I understand that, on this case, we have one and only one source language but we may need two target languages.
If we wish to build an application on two languages, one of them being english, we have to set TWO target languages on our app/config.php file in order to it to switch according to the user choice ?
What do you mean by ‘building an application in two languages’?
If you mean that you need its content to be translatable in two languages, then you may define a default one as Yii::app()->language, and switch it to the other one according to your application behaviour (for this case you may take a look at one of extensions as an example which way language handling may be coded). For translations storage you may use files or db. More often I use message files, dividing all translations into categories (one category - one file) and using key phrase that will be translated into any language, e.g.
Yii::t('caption', 'contact_us');
If you mean, that you need controllers/actions to be written in different languages (thus giving translated urls), then you may need to use CUrlManager, writing custom url-rules.