This article is about the current B996 via Kinross.
For the former B996 in Aberdeenshire, see B996 (Aberdeenshire)
The B996 is not the fastest road from Kelty in Fife into the Perthshire hills past Glenfarg, but it certainly used to be. Before the construction of the parallel M90 motorway, this was the only serious road north towards Perth - the A90. It survived in this guise into the early 1970s, but as a single carriageway all the way with numerous turns and T-junctions the downgrading and replacing was a necessity. The B996 number has been used for all the sections of former A90 that weren't candidates for transference to another A-road; consequently the road appears and disappears, hidden under a handful of other routes. So all the B996 is doing is joining up the dots; a bit unfair really for a road which was so important for so long.
Starting from the south, the road begins on the outskirts of Kelty, where the A909 (which had carried the old A90 route this far) changes tack and heads back to the M90 at junction 4. Kelty is mostly bypassed by the B996, although entirely by accident rather than design. Once the road has made it out of town it butts right up to the new motorway, save for allowing junction 5 with the B9097 to squeeze in at Gairney Bank.
After five miles covered, the M90 swings away to bypass Kinross to the west. The original road never achieved this and so the B996 becomes Kinross High Street, which is barely two lanes wide in the centre and needs to be negotiated with care. It's surprising to think that this was the trunk road to anywhere north for 50 years. The A922 - a bit of a nothing road but still more important than the B996 - merges into the northern part of the town having come straight from M90 junction 6, and takes priority.
St Paul's Church in Kinross, where the A922
emerges and steals the old road. It's going to get tricky for the B996 from here.
The next bit is a touch confusing. The A922 goes as far as Milnathort, but ends at a crossroads with the A911, former A91. Now both the A90 and A91 used this bit of road, but both are now nominally using the motorway. The A911 is not going our way and is much more interested in Glenrothes, so the B996 reappears for a bit. Then comes M90 J8 at Mawcarse, and the A91's bypassing is done, so it borrows a few yards of Perth Road to get back on the road way to St Andrews. Finally, a left turn gives us a B996 heading northward again on its own.
Most of these last five miles are pinned up against the M90 again, and the two share space side-by-side even right through the town of Glenfarg; some properties on the B996 Main Street just about back on to the motorway's hard shoulder. Balmanno Hill finally forces the old road to head eastwards to get around, whereas the more recent and more ambitious M90 goes straight through. This leaves the end of the B996 on its own in some tranquil Perthshire countryside, at least as far as Binn (or Bein) Wood, where the A912 has made it from the south-east and is going to take the mantle of this road all the way into Perth.