I prefer to use a Foreign Exchange transfer service. You will get a good exchange rate (better than from Paypal or from your bank) and it is possible to set it up with no transfer fees on both ends. You can use an ACH transfer from your US bank account to the FX's bank account and then a SEPA transfer in Europe to get the funds into your bank account. Transfers can also go in the opposite direction (Europe to USA).
I've used XE's service (www.xe.com) and US Forex's service (www.usforex.com). Transferwise (www.transferwise.com) is another popular service.
US Forex's service calls you to confirm each transfer. They also charge a $5 fee on transfers under $1000.
XE's service is more convenient: they do not charge fees for small transfers and do not call you to confirm the tramsfer. However, they will not let you set up a free ACH transfer from US bank accounts if you set up your XE account outside the US.
In both cases, the transfer takes a few business days to complete.
EDIT: In my recent (Summer 2015) experience, US Forex has offered slightly better rates than XE. I've also checked out Transferwise, and for transfers from the US it seems to be a bit of a gimmick with a fee added late in the process. For reference, I just got quotes from the three sites for converting 5000 USD to EUR:
- usforex.com: 5,000.00 USD = 4,498.00 EUR
- Effective rate: 0.8996 EUR / USD
- xe.com: 5,000.00 USD = 4,487.93 EUR
- Effective rate: 0.897586 EUR / USD
- transferwise.com: 5,000.00 USD + 47.50 USD fee = 4,518.66 EUR
- Effective rate: 0.8952 EUR / USD