I want to go over all the numbers between 2 specific numbers (excluding the 0) and I want to go over them not from the smallest to the largest or vice verse, by from the closest to zero to the farthest.

If my defining numbers, for example, are `-4` and `3` then I want to go over the numbers in the fallowing order: `-1`,`1`,`-2`,`2`,`-3`,`3`,`-4` or `1`,`-1`,`2`,`-2`,`-3`,`3`,`-4` (doesn't matter which of the two). In other languages I can do this with a `foreach` loop, how can I implement it in C#, if the answer is as I suspect a `foreach` loop, how do I construct the list for it?

For example, in Tcl I would do it like this:

```
# num1 is the abs value of the negative limit
set l [list ]
for {set i 1} {$i <= [max $num1 $num2]} {incr i} {
    if {$num1 >= $i} {
        lappend l [expr -1 * $i]
    }
    if {$num2 >= $i} {
        lappend l $i
    }
}

foreach num $l {
    puts $num
}

```