Here are answers to your questions.
1. You can open the Demat account using websites like fundsindia, SBI Demat, ICICI Direct, AXIS Demat, Zeroda and Sharekhan. Choose one of the demat sites listed here and open your account.
2. You need to have bank account, address proof, ID proof, License, Aadhar card and utility bill for last month. These are the documents that you need to show while opening demat account. Also you are asked to have one cancelled cheque to verify bank transactions in future.
3. Depending on the broker you choose online the charges will be different. For example some brokers charge per transaction. Some brokers charge yearly fee like 500 Rs or so. It depends on the broker where you open the demat account.
4. Fee can be deducted per year from bank account or you have to pay in one time every year for renewal. In case of transaction based fee service, you don't have to pay any money at all to broker.
5. Online payments are better option because you can buy and sell things quickly. Also agent method is good but they get commission out of it and often not a good advice to have agents for broker. You can also pay on your own using cheque, DD and other money transfer methods. Online or netbanking is much better option.
I suggest you to ask around for reviews on online brokers before opening account. Also read a lot about trading before you start purchasing stocks.