There are frequent buses from Bucharest (at least one per hour), trip takes about slightly over one hour. There are also a few buses per day to/from Rousse, the Bulgarian city across the river (coming and heading to Bucharest), but note they practically pass on the outskirts of Giurgiu.
There are several direct trains daily to/from Bucharest (international trains linking the Romanian capital with Sofia, Istanbul, Thessaloniki); they're rather slow ( at least 2 1/2 hours to get to Bucharest).
To cross from Bulgaria into Romania it is possible to walk the bridge connecting the two and not have to pay the border tax. ID is required to pass but there is no charge. Taxi or hitching will get you to and from the end of the bridge but avoid the price spike, which crossing by train, taxi and bus incur. The walk takes 15 minutes approx.
The city has a small public transport network (four bus lines).