LaTex is a powerful programming language for creating nice scientific documents. Though the language itself is not difficult, the program LyX is even easier to use, so LaTex quality documents can be made with virtually no knowledge of the code.
When writing scientific papers in LaTex, can type in references by hand, but BibTex is the preferred method. Again, the code is not difficult, but no-one wants to write it out by hand! Thankfully, again there is a program to simplify this called JabRef. This program can be used to store, search, and combine all your BibTex files. You can also export BibTex files from a number of common databases, such as ISI Web of Knowledge, or Academic Search Premier. CiteULike is a website which links to some databases (AIP's scitation and IOP, for instance). Typically if you find an article on these sites, there is a link to add the paper to CiteULike, which can export files in the BibTex format.
It can take a while to find citations for every paper you intend to cite. The best way to get around this is get the BibTex citation when you find a paper you intend to read. You don't have to put the citation into your paper, but at least you have the information.