Internet voting systems, catering to different requirements, have been widely implemented and used. Some have been successful, while others have experienced unexpected problems. This paper will overview the concerns of using Internet voting and try to give some solutions. Tradeoffs between the loss and gain of employing Internet voting are also addressed. A simple protocol is designed to show that technical problems as identified by publications in the literature can be solved fairly easily, though some of them seem subtle. This study will reveal that the main concerns with adopting Internet voting for critical elections are not the cryptographic tools, instead they include hardware and software reliability, and social and political issues. After discussing the possible concerns about Internet voting and possible solutions or comments, we propose the steps to enable Internet voting to be adopted even for critical elections.