There is only one train a day from Madrid to Lisbon. One way price is circa Euro 57,50
Please see this recent article on my blog here:
http://barlaventostravelblog.blogspot.com/2008/12/portuguese-railwys-lisbonmadrid-new.html
As regard buses, there are various options:
http://www.alsa.es operates buses services from both Estacion Sur and Avenida Americas in Madrid to Lisbon Sete Rios Bus Station several times daily.
The following is a current extract from the alsa timetable. (Click on the image to enlarge.)
http://www.avanzabus.com also operate the route from Madrid Est Sur with departures as follows:
Dept: MADRID 12:00 Arr: Lisboa 19:30
Dept: MADRID 21:00 Arr: Lisboa 04:30
http://www.anibal.net also operate a route from Madrid to Lisboa Gare Oriente as follows.
Dept: MADRID 22:45 Arr: Lisboa 06:00
Prices are available on the respective sites but you should expect to pay in the order of Euro 45-50 for a one way bus ticket.