Further to solution 1, you haven't mentioned how you are taking out the unique records.
If you use a HashSet you can do both the truncation to 2 characters and the "uniqueness" at the same time.
(Nice example
here[
^] but the adverts are annoying)
Essentially if you try to add a duplicate entry into the Set no exception is raised but the duplicate is not added. It's also quite quick!
For example
HashSet<string> hs = new HashSet<string>();
foreach (DataRow row in dt.Rows)
hs.Add(row["VrNo"].ToString().Substring(0,2));
Using the HashSet is the same as going through your datatable e.g.
foreach (string s in hs)