The bus was carrying some 30 passengers on a steep road around noon between the tourist hotspot of Budva on the Adriatic Sea coast and the former capital Cetinje.
“I was listening to music and all was normal. Then all of sudden there were screams and the sound of glass breaking,” one of the passengers told the state RTCG radio.
It was not immediately clear what caused the bus to skid some 15 metres into the ravine. Photos showed rescue workers holding on to a metal wire to try to reach the wreckage.
Doctors said nine people have been seriously injured, including one in life-threatening condition.
Prosecutor Andjela Radovanovic told reporters that the two people killed were a British national and an unidentified woman.
The two victims died on the spot while the injured received aid in Cetinje, said police in a post on social media.
“In the traffic accident, caused by the landing of a bus from the highway in which there were about 30 passengers, at least two people were killed - whose death was confirmed on the spot by HMP teams,” said police.
“Several passengers received light and serious injuries and are receiving medical assistance.”
The seriously injured were later transferred to a hospital in the capital Podgorica.
Cetinje is located in a mountainous inland area, a distance of some 20 miles from Budva.
The route is well-travelled by tourists, as Budva is the most popular tourist destination in the small Balkan country.
The Foreign, Commonwealth and Development Office is understood to be in contact with local authorities after the fatal crash.