Getting to El Puerto de Santa Maria: The nearest International Airports are Jerez, aproximately 20 minutes away, Sevilla, about 1 hour away; and Gibraltar, a ninety minutes trip. Some people go to Malaga but this results in a 3 hour trip from the airport. You can get to the house from airports and other public terminals by taxi and even by bus.
There are two direct trains from Madrid every day including Sundays, at 8:00 am. and at 4:00 pm., and they take 4 hours and 20 minutes. Additionally there are about 10 or 12 trains more daily, changing at Sevilla. There is also a direct daily train from Barcelona.
There are a couple of good local Car Rental companies and they will take the car to you on arrival,
at no extra charge, if you fly to Jerez or arrive by train. However, depending on your kind of ticket, you might find it is better to do this in conjunction with your airline or rail fare. It is worth checking.