While services by big bus companies are available, your best bet if you are after flexibility would be the dolmuses (mini buses) that leave about every 30 mins from Bursa's otogar - no reservations needed. The mini buses are located at right hand end of the otogar (facing the otogar).
Fare was YTL 5 (about EUR 2.50) as of June 2006 for this 1.5-hr trip, which takes you through a very scenic route of cypress trees, peach orchards and vineyards lining the shore of Iznik Golu (Iznik Lake).
If you visit Istanbul , Iznik is just 2 hours from Istanbul by a rented car. You should come to Asian side first and take E-5 to Pendik and take a fast ferry from Pendik to Yalova. After ferry you should follow Bursa arrows and almost 20 minutes or 1/2 an hour later you can see Iznik arrow on the right.
You can take a bus to Yalova and another bus to Iznik too.
Passenger and car ferries go from/to Yenikapi and Pendik to Yalova.
Just passengers from/to Kartal and Bostanci to Yalova.
All HERE just click on yes.
Other car and passenger ferries run between Eskihisar and Yalova or Hereke and Karamursel but they are further to the east of Istanbul.
Eskihisar ferry number below.
Since I plan to go to Iznik first before going to Bursa, I took the fast ferry that goes to Yalova.
But if you're going to Bursa, the nearest one would be the ferry that goes to Guzelyali (Bursa) fare is alil higher than Yalova (YTL20) but at least, you'll get away with the patience-busting traffic of the city, because from Guzelyali port you have to take a minibus to the metro-station and from metro to the city centrum - a metrotrain doesn't get caught in a traffic do they?
Yenikapi port is just a 15-minute walk to the marmaris sea side from my hotel in Beyazid.
I bought the ticket one day in advance but it's easy to buy it on the day of travel. Cost is YTL 12 to Yalova. You can reserve and/or buy your tickets too at their website. The trip is just more than an hour. The ferry is so comfortable, with tables and a cafeteria inside. It's a fast modern ferry that's also good for people who travel with their car, you can load your vehicle on the ferry at reasonable charges. You may choose to sit on the back or front-side (colder in winter) of the ferry to watch the marmara sea.
At Yalova, there are minibuses waiting outside the port, ask for Iznik, trip takes about an hour and fare was YTL7.50 from the port to Iznik, the minibus stops exactly at the Hagia Sophia - the siter of the 1st and 2nd councils of Nicaea (Nicene Creed).