How to select a specific row based on another row from same table
Add a ROW_NUMBER(), and select all records where row_number = 1. 

with dupli as
(
    select id, col1, col2, row_number() over (partition by id order by col1) rn
    from @dup
)
select     d1.*
from       @dup d1
inner join dupli d2
on         d1.id = d2.id
and        d1.col1 = d2.col1
and        d2.rn = 1;

|id    |col1|col2         |
|:-----|---:|:------------|
|111111|   1|Green        |
|222222|   9|Not Specified|
|333333|   1|Blue         |
|444444|   2|Undisclosed  |


dbfiddle here