I disagree partly. Technically you don't need two channels, one to send, the other to receive, to be able to send and receive coins. You can send coins when your sole channel has outbound capacity. You can receive coins with the same sole channel if this channel has inbound capacity. (In this case all coin flow from your LN node goes through your channel partner. Your channel partner needs to be able to properly route your coins to and from some other LN node.)
The thing is just that when you fund and open a channel all liquidity is usually first on the outbound side. You can immediately send coins to your channel partner or routed by him to another LN node. But as you usually don't have any inbound capacity immediately after opening a channel (what Phoenix wallet does is not common!) you can't yet receive any coins to that channel as long as you don't create inbound capacity by sending out some coins from that channel.
What is true, you need at least two channels to route coins through your node. Your node could route a payment of someone else that goes in through a channel of yours that has enough inbound capacity and that goes out by your other channel that has enough outbound capacity (you can claim a little bit of routing fees; don't even think to get greedy).
Yes, that is correct, but I just want to point out that most software opens channels via the way you mentioned in the second paragraph.