The three game modes are: Open, Private Group and Solo. They all exist together at the same time, sharing the same databases and affecting the dynamic galaxy the same way. The main difference between the three is which "instance" you will spawn in.
For Open mode, you will spawn into some instance and any other players also in Open Mode that happen to be on the same game server and in the same instance 'should' be visible. This can be problematic when actually trying to meet up with friends and a re-logging dance can usually chance a spawn where you'll appear together.
In Private Group, you choose to start in someone's group - even your own (everyone can create their own group). To join other groups, you need to apply to join the group and when accepted you will see the option to start in that group. This is the same as Open, but the only other players you will see will be from that private group.
In solo, it's just you - forced to spawn into your own instance at all times. You will still affect the dynamic galaxy the same as a player in Private or Open (faction influence, trading stocks & prices, etc) but no other human players. Aka the "anti-ganking" mode. There's also the debate about whether it's fair to have Open and Solo affect the universe the same way.
In all cases, there are lots of NPC ships around driving the gameplay. Adding others to your friends list should theoretically help you spawn in the same instance as them when in Open but this has been hit and miss through Beta (although it seems better now).
I think that about covers it, right commanders?