Barichara is easily reached from nearby San Gil which is right on the main road from Bogota to points north. Go to the local bus terminal rather than the larger one serving the rest of the country and beyond. It's located at Calle 15 & Carrera 10, which is a short interesting walk from the center of town. Mini buses leave frequently and take about 45 scenic minutes. Scenic generally means winding and the trip costs 3500 COP ($1.75). The take you to Barichara's main square where you'll also catch the bus back to San Gil.
More local buses are leaving San Gil from a small bus terminal on the corner of Calle 15/Carrera 10. The buses for Barichara are leaving about every 45 minutes. When I arrived at the terminal I didn’t have to wait long for the bus to leave. The ticket was 3300 pesos (July 2008) and the bus journey to Barichara took almost 40 minutes. In Barichara the bus stopped at the main square, Parque Principal., and that’s from where you can take a bus back to San Gil.