I'm not aware of any existing libraries for c#. You should be able to port this javascript reader:
https://github.com/igvteam/igv.js/blob/master/js/feature/tribble.js. It loads a "tribble" index, and will return file blocks (start position, size) corresponding to a genomic range. The file is binary, "BinaryParser" reads it and turns the bytes into ints, floats, strings, etc. Strings are null (0) terminated. I think there are libraries to do this in c/c#, you shouldn't have to port BinaryParser but it should be easy enough to do.
Given a file block you need to seek to the start position and read "size" bytes. Blocks will contain many features, you still have to scan through them looking for the snp of interest.