Despite PDF files being "read only" by default, there are certain tools and software you can use to change the contents of a PDF file for free without resorting to paid software like Adobe Acrobat.
Free Tools To Edit PDF filesEdit PDF Files Online
2 step PDF Editing
This basically involves converting PDF files into another format and then editing the converted PDF file. After editing, you can use a PDF writer to reconvert the edited file back to PDF.
If your PDF file can be suitably edited as a Word document, you can use a PDF to Word converter for instant conversion. Edit the converted file and then, you can use any free PDF writer to recreate a PDF file. If you have Open Office, you can use its export as PDF feature to create a PDF file from almost any printable document.
Multivalent Browser: Multivalent browser offers minimal PDF editing in the form of allowing to add annotations. It also contains several command line tools which allow for merging and compressing PDF files.
Edit Meta data of PDF files
Meta Data is the information that is associated with a PDF file. If you wish to change this information, you can use the free PDFMetaEdit to edit information like title, author name, bookmarks and other creation data of a PDF document. PDFMetaEdit can also be used to remove and add passwords (encrypt) to PDF files.
Edit PDF files on Android based phones
Xodo PDF Reader & Editor is a free application that you can download on your Android based mobiles and tablets to write on, underline text and annotate PDF files and forms.
Advanced PDF Editors (editing text, images etc.)
Open Office Draw
To load the PDF Import extension in Open Office, just open Extension Manager from the Tools Menu, click on Add and then select the location of the downloaded extension. For those of you who want a PDF Editor without any initial setup, LibreOffice, an Office suite descended from Open Office, has this extension included by default. If you don't mind the download size, Open Office Draw is simply the best free PDF editor available.
Inkscape: Inkscape is a vector graphics editor that allows you import and export PDF files. You can use Inkscape to select text, image or any other object on a PDF file and then change its position or even delete it. It also lets you do free hand drawing on PDF files and add annotations. While Inkscape offers some really good features, its complex interface makes it difficult for users to use it. Moreover, it only allows you to edit only a single page at a time. You can, however, convert these to a single PDF file using a PDF combiner.
PDFTools: PDFTools is a PDF management application that supports encrypting, decrypting (remove password), joining and splitting PDF files. Its Stamp feature can be used to add text and images over a PDF file. You can stamp to the location of your choice using the X and Y co-ordinates. It includes a PDF creator which can be used to create a PDF file from any XML document. It also supports re-arranging pages in a PDF file.
GIMP: GIMP or the GNU Image Manipulation Program can also be used as a PDF editor. Just import any PDF file as an image or a layer, then edit it, and then use its export function to get a PDF file. The only downside is that like Inkscape, GIMP also allows you to edit only a single page at a time. You can, however, easily combine these to get a single PDF file using free software like the above mentioned PDFTools.
PDF-XChange Viewer: The free version of PDF-XChange viewer can be used to directly type text on PDF files. This makes this software a good PDF form filler. Its image stamp feature can be used to insert images directly on any PDF document.
PDFEdit: PDFEdit is a full fledged PDF editor for Unix-Like operating systems. Its downside is that it does not support editing protected or encrypted PDF files. PDFEdit has a beta version for Windows, but it didn't work for me.