This is a difficult one, because you're not really asking one question. And the questions you are asking are mostly really broad, deep questions which need a huge amount of knowledge of your exact circumstances - none of which we have.
1) If you can use "personal database" for each client then yes, that is possibly going to have better performance (it depends on the individual PCs) BUT... there is a fundamental difference between using a server based system and multiple stand alone databases which is:
Individual databases don't talk to each other
Which means that your users don't share information between them - which is the whole point of a server based system!
If you have twenty users on SQL Server, then that's probably because you want Janice in accounts to be able to look at what John in Sales has added to Customer 1234's account. And you can't do that with individual databases.
2) Everything. Far, far to much to even begin here. There are whole books on the subject - lots of them - I'd suggest that you get a couple of good SQL server / C# books and read them carefully.
3) Don't worry about it. It's probably not going to matter (you have much bigger fish to fry first).